Catching unexpected Soap Faults

Hi,

As per the documentation and a previous post, the following route is supposed to catch all faults:

<Route>
<Criteria> MESSAGE EQ 'Fault' AND MESSAGENS EQ 'http://www.w3.org/2003/05/soap-envelope' OR MESSAGE EQ 'Fault' AND MESSAGENS EQ 'http://schemas.xmlsoap.org/soap/envelope'</Criteria>
<Destination>IWSSoapSevice[http://schemas.xmlsoap.org/ws/2004/08/addressing/fault]</Destination>
</Route>

However, this does not happen and exceptions (as thrown by participant services)are never routed by CSF Session. But by using the following route, I am able to catch unexpected exceptions (as thrown by participant services):


<Route>
<Criteria>(ACTION EQ 'http://schemas.xmlsoap.org/ws/2004/08/addressing/fault')</Criteria>
<Destination>IWSSoapSevice[UnknownFault]</Destination>
</Route>

Has anyone seen this behavior Can someone explain this

Thanks,

Ashish Malhotra



Answer this question

Catching unexpected Soap Faults

  • ahmedilyas

    It appears that an extra forward slash at the end of the namespace does the magic. So please remember to do that when you construct a routing criteria of this sort.

    Incorrect format MESSAGE EQ 'Fault' AND MESSAGENS EQ 'http://schemas.xmlsoap.org/soap/envelope'.

    Correct format MESSAGE EQ 'Fault' AND MESSAGENS EQ 'http://schemas.xmlsoap.org/soap/envelope/'

    Thanks





  • Jamie Thomson

    Hi,

    Yes, I did try the route you had specified, but it did not work.

    Thanks,

    Ashish Malhotra


  • Bert666

    Ashish - Did you try the following

    <Route>
    <Criteria> MESSAGE EQ 'Fault' AND MESSAGENS EQ 'http://www.w3.org/2003/05/soap-envelope' OR MESSAGE EQ 'Fault' AND MESSAGENS EQ 'http://schemas.xmlsoap.org/soap/envelope'</Criteria>
    <Destination>IWSSoapSevice[UnknownFault]</Destination>
    </Route>

    Thanks



  • Catching unexpected Soap Faults