[ 
https://issues.apache.org/activemq/browse/SM-841?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jeff Puro updated SM-841:
-------------------------

    Attachment: servicemix-soap-fault.patch

I have attached a patch file that affects the servicemix-soap module.  The way 
the fix works is that it determines if multiple elements have been returned in 
the Details section of the soap fault, if so, then it goes ahead and wraps a 
parent element around the multiple elements.  Here are some notes to keep in 
mind:

1)  We may want to change the name of the parent element to be more unique so 
that it doesn't conflict with other elements that may be part of the actual 
fault details.

2)  Perhaps adding a boolean onto the http endpoints to turn this on or off is 
a good idea.  I'm not 100% on this mostly because servicemix should properly 
handle multiple elements by default since the SOAP spec seems to indicate that 
this is a valid fault.

3)  Because of the way the wrapping and unwrapping of the fault's content work, 
while the fault is traveling within the servicemix nmr to different endpoints, 
they will see the fault content with the parent tag wrapped around the main 
detail elements.  This may be undesirable and may indicate that either we need 
a more specific name for the parent element or that we need to make this 
behavior optional.  I'm not 100% on how to best handle this.

4)  The code may be refactored more to improve performance of the wrapping and 
unwrapping of the parent element.

> The servicemix-http provider endpoint does not properly handle web services 
> that return faults with multiple elements in the detail section.
> --------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: SM-841
>                 URL: https://issues.apache.org/activemq/browse/SM-841
>             Project: ServiceMix
>          Issue Type: Bug
>          Components: servicemix-http, servicemix-soap
>    Affects Versions: 3.0.1, 3.1
>            Reporter: Jeff Puro
>         Assigned To: Jeff Puro
>             Fix For: 3.0.1, 3.1.1
>
>         Attachments: servicemix-soap-fault.patch
>
>   Original Estimate: 2 hours
>  Remaining Estimate: 2 hours
>
> The servicemix-http provider endpoint fails when a web service it calls 
> returns a fault with multiple child elements in the detail section.  The 
> solution to this is when there are multiple elements, we should wrap them all 
> in a root element so they get properly passed back as a fault.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to