You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Colm O hEigeartaigh (JIRA)" <ji...@apache.org> on 2009/05/08 16:53:45 UTC

[jira] Updated: (CXF-2212) SAAJInInterceptor creates a SAAJ SOAPFault with only one "Detail" child

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

Colm O hEigeartaigh updated CXF-2212:
-------------------------------------

    Attachment: cxf_2212.patch


Please apply the attached patch + test for this problem.

> SAAJInInterceptor creates a SAAJ SOAPFault with only one "Detail" child
> -----------------------------------------------------------------------
>
>                 Key: CXF-2212
>                 URL: https://issues.apache.org/jira/browse/CXF-2212
>             Project: CXF
>          Issue Type: Bug
>          Components: Soap Binding
>    Affects Versions: 2.1.5, 2.2.1
>            Reporter: Colm O hEigeartaigh
>             Fix For: 2.1.6, 2.2.2
>
>         Attachments: cxf_2212.patch
>
>
> The SAAJInInterceptor creates a SAAJ SOAPFault with only one "Detail" child. For example, if a SOAP Fault is received with:
> <detail><errorcode>3</errorcode><errorstring>This is a fault detail error string</errorstring></detail>
> The following code in SAAJInInterceptor will only add a detail element with a single child element to the SOAPFault object that is created:
> soapFault.addDetail().appendChild(
>     soapMessage.getSOAPPart().importNode(
>         fault.getDetail().getFirstChild(), true));
> And so the output will be:
> <detail><errorcode>3</errorcode></detail>
> This is clearly a bug, as the SOAP specs allow for multiple detail child elements. Even worse, it doesn't take into account the fact that fault.getDetail() could be of type e.g Node.TEXT, and it could just end up adding a newline character. 

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