Author: veithen Date: Sat May 7 21:28:03 2011 New Revision: 1100630 URL: http://svn.apache.org/viewvc?rev=1100630&view=rev Log: AXIS2-5006: Merged r1100628 to the 1.6 branch.
Modified: axis/axis2/java/core/branches/1_6/ (props changed) axis/axis2/java/core/branches/1_6/modules/saaj/src/org/apache/axis2/saaj/SOAPElementImpl.java axis/axis2/java/core/branches/1_6/modules/saaj/test/org/apache/axis2/saaj/SOAPHeaderTest.java Propchange: axis/axis2/java/core/branches/1_6/ ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Sat May 7 21:28:03 2011 @@ -1 +1 @@ -/axis/axis2/java/core/trunk:1070439,1072077,1072271,1072499,1072510,1078242,1081563,1081587,1081590,1082316,1082322,1082702,1082726,1082738,1083180,1083192,1083379,1083381,1083425,1083433,1083446,1084753,1085514,1087073,1088239,1088248-1088249,1088251,1088268,1091178,1091191,1099385,1099389 +/axis/axis2/java/core/trunk:1070439,1072077,1072271,1072499,1072510,1078242,1081563,1081587,1081590,1082316,1082322,1082702,1082726,1082738,1083180,1083192,1083379,1083381,1083425,1083433,1083446,1084753,1085514,1087073,1088239,1088248-1088249,1088251,1088268,1091178,1091191,1099385,1099389,1100628 Modified: axis/axis2/java/core/branches/1_6/modules/saaj/src/org/apache/axis2/saaj/SOAPElementImpl.java URL: http://svn.apache.org/viewvc/axis/axis2/java/core/branches/1_6/modules/saaj/src/org/apache/axis2/saaj/SOAPElementImpl.java?rev=1100630&r1=1100629&r2=1100630&view=diff ============================================================================== --- axis/axis2/java/core/branches/1_6/modules/saaj/src/org/apache/axis2/saaj/SOAPElementImpl.java (original) +++ axis/axis2/java/core/branches/1_6/modules/saaj/src/org/apache/axis2/saaj/SOAPElementImpl.java Sat May 7 21:28:03 2011 @@ -933,9 +933,8 @@ public class SOAPElementImpl extends Nod childEle.addAttribute(name, node.getValue()); } - NodeList children = child.getChildNodes(); - for (int i = 0; i < children.getLength(); i++) { - Node node = children.item(i); + Node node; + while ((node = child.getFirstChild()) != null) { childEle.appendChild(node); } } Modified: axis/axis2/java/core/branches/1_6/modules/saaj/test/org/apache/axis2/saaj/SOAPHeaderTest.java URL: http://svn.apache.org/viewvc/axis/axis2/java/core/branches/1_6/modules/saaj/test/org/apache/axis2/saaj/SOAPHeaderTest.java?rev=1100630&r1=1100629&r2=1100630&view=diff ============================================================================== --- axis/axis2/java/core/branches/1_6/modules/saaj/test/org/apache/axis2/saaj/SOAPHeaderTest.java (original) +++ axis/axis2/java/core/branches/1_6/modules/saaj/test/org/apache/axis2/saaj/SOAPHeaderTest.java Sat May 7 21:28:03 2011 @@ -423,4 +423,22 @@ public class SOAPHeaderTest extends Asse assertEquals("DEF", text.getData()); assertFalse(iter.hasNext()); } + + @Validated @Test + public void testAXIS2_5006() throws Exception { + MessageFactory fact = MessageFactory.newInstance(); + SOAPMessage message = fact.createMessage(); + SOAPHeader header = message.getSOAPHeader(); + + Document doc = message.getSOAPPart(); + Element orgElement = doc.createElementNS("urn:ns", "ns:test"); + orgElement.appendChild(doc.createElementNS(null, "child1")); + orgElement.appendChild(doc.createElementNS(null, "child2")); + orgElement.appendChild(doc.createElementNS(null, "child3")); + header.appendChild(orgElement); + + SOAPElement element = (SOAPElement)header.getChildElements().next(); + assertTrue(element instanceof SOAPHeaderElement); + assertEquals(3, element.getChildNodes().getLength()); + } } \ No newline at end of file