Author: chinthaka
Date: Wed Apr 5 05:32:27 2006
New Revision: 391602
URL: http://svn.apache.org/viewcvs?rev=391602&view=rev
Log:
Fixing wrong children order for SOAPEnvelope. This can only be done when
SOAPEnvelope is built.
Modified:
webservices/commons/trunk/modules/axiom/src/org/apache/axiom/soap/impl/llom/SOAPEnvelopeImpl.java
webservices/commons/trunk/modules/axiom/test/org/apache/axiom/soap/SOAPEnvelopeTest.java
Modified:
webservices/commons/trunk/modules/axiom/src/org/apache/axiom/soap/impl/llom/SOAPEnvelopeImpl.java
URL:
http://svn.apache.org/viewcvs/webservices/commons/trunk/modules/axiom/src/org/apache/axiom/soap/impl/llom/SOAPEnvelopeImpl.java?rev=391602&r1=391601&r2=391602&view=diff
==============================================================================
---
webservices/commons/trunk/modules/axiom/src/org/apache/axiom/soap/impl/llom/SOAPEnvelopeImpl.java
(original)
+++
webservices/commons/trunk/modules/axiom/src/org/apache/axiom/soap/impl/llom/SOAPEnvelopeImpl.java
Wed Apr 5 05:32:27 2006
@@ -78,7 +78,7 @@
new QName(SOAPConstants.HEADER_LOCAL_NAME));
if (builder == null && header == null) {
inferFactory();
- header = ((SOAPFactory)factory).createSOAPHeader(this);
+ header = ((SOAPFactory) factory).createSOAPHeader(this);
addChild(header);
}
return header;
@@ -99,6 +99,13 @@
{
throw new SOAPProcessingException("SOAP Envelope can not have
children other than SOAP Header and Body", SOAP12Constants.FAULT_CODE_SENDER);
} else {
+ if (this.done && (child instanceof SOAPHeader)) {
+ SOAPBody body = getBody();
+ if (body != null) {
+ body.insertSiblingBefore(child);
+ return;
+ }
+ }
super.addChild(child);
}
}
Modified:
webservices/commons/trunk/modules/axiom/test/org/apache/axiom/soap/SOAPEnvelopeTest.java
URL:
http://svn.apache.org/viewcvs/webservices/commons/trunk/modules/axiom/test/org/apache/axiom/soap/SOAPEnvelopeTest.java?rev=391602&r1=391601&r2=391602&view=diff
==============================================================================
---
webservices/commons/trunk/modules/axiom/test/org/apache/axiom/soap/SOAPEnvelopeTest.java
(original)
+++
webservices/commons/trunk/modules/axiom/test/org/apache/axiom/soap/SOAPEnvelopeTest.java
Wed Apr 5 05:32:27 2006
@@ -108,11 +108,12 @@
public void testRandomSOAPHeader() {
SOAPFactory soapFac = OMAbstractFactory.getSOAP12Factory();
SOAPEnvelope defaultEnvelope = soapFac.getDefaultEnvelope();
+ defaultEnvelope.build();
defaultEnvelope.getHeader().detach();
soapFac.createSOAPHeader(defaultEnvelope);
- System.out.println(defaultEnvelope.getHeader());
+ System.out.println(defaultEnvelope);
// System.out.println("defaultEnvelope = " + defaultEnvelope);
}