Try something like:

<eip:xpath-predicate xpath="count(/zmr:BPKAbfrage) = 1">
   <eip:namespaceContext>
<bean class="org.jaxen.SimpleNamespaceContext">
     <constructor-arg>
       <map>
         <entry>
           <key><value>zmr</value></key>
           <value>http://www.sozialversicherung.at/schema/egov/zmr/1_0</value>
         </entry>
       </map>
     </constructor-arg>
</bean>
   </eip:namespaceContext>
</eip:predicate>

Cheers,
Guillaume Nodet

On 4/26/06, Juergen Mayrbaeurl <[EMAIL PROTECTED]> wrote:
>
> I'm trying to use the ContentBasedRouter from the ServiceMix EIP component.
>
> <eip:content-based-router
>         service="test:egovrouter" endpoint="endpoint">
>   <eip:rules>
>     <eip:routing-rule>
>       <eip:predicate>
>         <eip:xpath-predicate
>                 xpath="count(/BPKAbfrage) = 1" />
>       </eip:predicate>
>       <eip:target>
>         <eip:exchange-target service="test:szrVerarbeitung" />
>       </eip:target>
>     </eip:routing-rule>
>     <eip:routing-rule>
>       <eip:predicate>
>         <eip:xpath-predicate
>                 xpath="count(/Personenabfrage) = 1" />
>       </eip:predicate>
>       <eip:target>
>         <eip:exchange-target service="test:zmrVerarbeitung" />
>       </eip:target>
>     </eip:routing-rule>
>   </eip:rules>
> </eip:content-based-router>
>
> The input message looks like:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <zmr:BPKAbfrage xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>         xmlns:zmr="http://www.sozialversicherung.at/schema/egov/zmr/1_0";>
>
>   <zmr:Abfrageparameter>
>     <zmr:Bearbeitung>
>         <zmr:Benutzer>
>                 <zmr:Bearbeiter>99mustermann</zmr:Bearbeiter>
>                 <zmr:Name>Mustermann Max</zmr:Name>
>                 
> <zmr:GlobaleIdentifizierung>99mustermann</zmr:GlobaleIdentifizierung>
>         </zmr:Benutzer>
>         <zmr:Bearbeitungsgrund>ZPV Test</zmr:Bearbeitungsgrund>
>         <zmr:System>STP ZPV</zmr:System>
>     </zmr:Bearbeitung>
>     <zmr:PersonenSuchkriterien>
>       <zmr:Familienname>Mayrbäurl</zmr:Familienname>
>       <zmr:Vorname>Jürgen</zmr:Vorname>
>       <zmr:Geburtsdatum>1966-01-05</zmr:Geburtsdatum>
>     </zmr:PersonenSuchkriterien>
>   </zmr:Abfrageparameter>
> </zmr:BPKAbfrage>
>
> The ContentBasedRouter tells me that it can't find a matching rule for the
> exchange. Maybe the reason for this is the missing namespace in the xpath
> expression.
>
> Any idea? And how can I specify the namespace in the xpath expression?
>
> Greetings
> Juergen
>
> BTW: The message content will cause exceptions in the traceMessages() method
> of the DeliveryChannelImpl, when tracing is on.
> --
> View this message in context: 
> http://www.nabble.com/NamespaceContext-in-XPath-based-content-router-t1512305.html#a4103093
> Sent from the ServiceMix - User forum at Nabble.com.
>
>

Reply via email to