You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@axis.apache.org by th...@apache.org on 2011/09/29 13:12:10 UTC

svn commit: r1177262 - in /axis/axis2/java/rampart/branches/1_5_x: ./ modules/documentation/src/site/xdoc/download/1.5.1/download.xml modules/rampart-core/src/main/java/org/apache/rampart/util/Axis2Util.java

Author: thilinamb
Date: Thu Sep 29 11:12:10 2011
New Revision: 1177262

URL: http://svn.apache.org/viewvc?rev=1177262&view=rev
Log:
Committing the patch provided by AmilaJ for RAMPART-336.

Modified:
    axis/axis2/java/rampart/branches/1_5_x/   (props changed)
    axis/axis2/java/rampart/branches/1_5_x/modules/documentation/src/site/xdoc/download/1.5.1/download.xml   (props changed)
    axis/axis2/java/rampart/branches/1_5_x/modules/rampart-core/src/main/java/org/apache/rampart/util/Axis2Util.java

Propchange: axis/axis2/java/rampart/branches/1_5_x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Sep 29 11:12:10 2011
@@ -1 +1 @@
-/axis/axis2/java/rampart/trunk:1072178,1072180,1072182,1072187,1072313,1072316,1083686,1089599,1130570,1132548,1134683,1144616,1157613,1157670,1157672,1157674,1157724,1157731,1172842,1175324
+/axis/axis2/java/rampart/trunk:1072178,1072180,1072182,1072187,1072313,1072316,1083686,1089599,1130570,1132548,1134683,1144616,1157613,1157670,1157672,1157674,1157724,1157731,1172842,1175324,1177260

Propchange: axis/axis2/java/rampart/branches/1_5_x/modules/documentation/src/site/xdoc/download/1.5.1/download.xml
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Sep 29 11:12:10 2011
@@ -1 +1 @@
-/axis/axis2/java/rampart/trunk/modules/documentation/src/site/xdoc/download/1.5.1/download.xml:1072178,1072180,1072182,1072187,1072313,1072316,1083686,1089599,1130570,1131278,1132548,1134683,1144616,1157613,1157670,1157672,1157674,1157724,1157731,1172842,1175324
+/axis/axis2/java/rampart/trunk/modules/documentation/src/site/xdoc/download/1.5.1/download.xml:1072178,1072180,1072182,1072187,1072313,1072316,1083686,1089599,1130570,1131278,1132548,1134683,1144616,1157613,1157670,1157672,1157674,1157724,1157731,1172842,1175324,1177260

Modified: axis/axis2/java/rampart/branches/1_5_x/modules/rampart-core/src/main/java/org/apache/rampart/util/Axis2Util.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/rampart/branches/1_5_x/modules/rampart-core/src/main/java/org/apache/rampart/util/Axis2Util.java?rev=1177262&r1=1177261&r2=1177262&view=diff
==============================================================================
--- axis/axis2/java/rampart/branches/1_5_x/modules/rampart-core/src/main/java/org/apache/rampart/util/Axis2Util.java (original)
+++ axis/axis2/java/rampart/branches/1_5_x/modules/rampart-core/src/main/java/org/apache/rampart/util/Axis2Util.java Thu Sep 29 11:12:10 2011
@@ -194,6 +194,10 @@ public class Axis2Util {
                         // it is a header we have added in rampart eg. EncryptedHeader and should
                         // be converted to SOAPHeaderBlock for processing
                     	} else {
+                            // First detach element from soap header
+                            element.detach();
+
+                            // add new element
                     		header = soapHeader.addHeaderBlock(element.getLocalName(), element.getNamespace());
                     		Iterator attrIter = element.getAllAttributes();
                     		while (attrIter.hasNext()) {
@@ -206,14 +210,17 @@ public class Axis2Util {
                     			header.declareNamespace(ns);
                     		}
                     		Iterator children = element.getChildElements();
-                    		while (children.hasNext()) {
+
+                            // Element is a composite element, in which it has many siblings.
+                            // All siblings will be added when we add a single node.
+                            // See ParentNode.insertBefore(Node newChild, Node refChild) for
+                            // more information.
+                    		if (children.hasNext()) {
                     			OMNode child = (OMNode)children.next();
                     			children.remove();
                     			header.addChild(child);
                     		}
-                    		
-                    		element.detach();
-                    		
+
                     		soapHeader.build();
                     		
                     		header.setProcessed();