[
https://issues.apache.org/jira/browse/AXIOM-430?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13561614#comment-13561614
]
Hudson commented on AXIOM-430:
------------------------------
Integrated in ws-axiom-trunk #1394 (See
[https://builds.apache.org/job/ws-axiom-trunk/1394/])
* Partial fix for AXIOM-430.
* Test cases for AXIOM-392. (Revision 1437971)
Result = SUCCESS
veithen :
Files :
*
/webservices/axiom/trunk/modules/axiom-api/src/test/resources/soap/soap11/empty-header.xml
*
/webservices/axiom/trunk/modules/axiom-api/src/test/resources/soap/soap12/empty-header.xml
*
/webservices/axiom/trunk/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPEnvelopeImpl.java
*
/webservices/axiom/trunk/modules/axiom-dom/src/test/java/org/apache/axiom/soap/impl/dom/SOAPImplementationTest.java
*
/webservices/axiom/trunk/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPEnvelopeImpl.java
*
/webservices/axiom/trunk/modules/axiom-impl/src/test/java/org/apache/axiom/soap/impl/llom/SOAPImplementationTest.java
*
/webservices/axiom/trunk/modules/axiom-testsuite/src/main/java/org/apache/axiom/ts/soap/SOAPTestSuiteBuilder.java
> Inconsistent serialization of SOAPEnvelope
> ------------------------------------------
>
> Key: AXIOM-430
> URL: https://issues.apache.org/jira/browse/AXIOM-430
> Project: Axiom
> Issue Type: Bug
> Components: DOOM, LLOM
> Affects Versions: 1.2.13
> Reporter: Andreas Veithen
> Priority: Minor
>
> The SOAPEnvelopeImpl#internalSerialize method contains code that skips the
> serialization of the SOAP header if it is empty. Presumably this code is
> there because SOAPFactory#getDefaultEnvelope() always creates a SOAP header,
> but one doesn't want that header to appear in the output if there are no
> header blocks. However, this only works when the SOAPEnvelope is serialized
> to an XMLStreamWriter, OutputStream or Writer. The header is still present in
> the sequence of events produced by getXMLStreamReader or getSAXSource. This
> can be shown using the following piece of code:
> SOAPFactory factory = OMAbstractFactory.getSOAP11Factory();
> SOAPEnvelope envelope = factory.getDefaultEnvelope();
> factory.createOMElement(new QName("urn:test", "test", "p"),
> envelope.getBody());
> envelope.serialize(System.out);
> System.out.println();
>
> TransformerFactory.newInstance().newTransformer().transform(envelope.getSAXSource(true),
> new StreamResult(System.out));
> The output is:
> <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><p:test
> xmlns:p="urn:test"/></soapenv:Body></soapenv:Envelope>
> <?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Header/><soapenv:Body><p:test
> xmlns:p="urn:test"/></soapenv:Body></soapenv:Envelope>
> In addition to that, SOAPEnvelopeImpl#internalSerialize also skips
> serialization of whitespace and comments.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]