ode-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rafal Rusin <rafal.ru...@gmail.com>
Subject Re: Fault handling with multiple detail elements and servicemix
Date Fri, 06 Feb 2009 23:08:45 GMT
I think you can try to mess up with servicemix message mapper
(org/apache/ode/jbi/msgmap/ServiceMixMapper.java). You can switch it
to your class in ode-jbi.properties.

2009/2/6 Ford, Mark <mark.ford@ll.mit.edu>:
> My workaround for this is to introduce a saxon proxy for all of the partner links that
might result in a fault. I'd prefer some declarative way of handling this in ODE but it's
very easy to implement and I assume very low cost since I only need to do transforms when
a fault is thrown.
>
>
> On 2/4/09 5:45 PM, "Ford, Mark" <mark.ford@ll.mit.edu> wrote:
>
> I've run into an issue where a SOAP:Fault with multiple detail elements is causing the
fault handling in my process to fail. This looks like a servicemix issue more than an ODE
issue but I'm curious how other developers are dealing with it.
>
> ODE correctly matches the fault to the intended catch element. This catch is defined
with the appropriate fault WSDL message and name. The problem arises when trying to copy values
from this fault variable since the underlying XML doesn't match the definition of the variable.
>
> For example:
>
> <multiple-details>
>   <ns1:myFault>...</ns1:myFault>
>   <ns2:exceptionName/>
>   <ns2:hostname/>
> </multiple-details>
>
> Vs
>
> <ns1:myFault>...</ns1:myFault>
>
> If I tweak the service I'm invoking to reply with a single detail then everything works
fine. I won't always be in control of the services I'm invoking so it's possible I could run
into this issue in the future if I end up invoking other axis services.
>
> Is there a way to have ODE automatically unwrap this fault for me so I don't have to
deal with the multiple-details element? The fact that the correct catch block executed indicates
that ODE is somehow accounting for this multiple-details element within the fault matching
logic so perhaps there's a way to have it unwrap it and discard all but the first detail.
>
> --
> Mark Ford
> MIT Lincoln Laboratory
> 244 Wood Street
> Lexington MA 02420
> (781) 981-1843
>



-- 
RafaƂ Rusin
www.mimuw.edu.pl/~rrusin

Mime
View raw message