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 ve...@apache.org on 2012/03/11 13:55:30 UTC
svn commit: r1299356 - in /axis/axis2/java/core/trunk/modules:
adb/src/org/apache/axis2/databinding/utils/
adb/test/org/apache/axis2/databinding/utils/
jaxws/src/org/apache/axis2/jaxws/message/impl/
saaj/src/org/apache/axis2/saaj/
Author: veithen
Date: Sun Mar 11 12:55:29 2012
New Revision: 1299356
URL: http://svn.apache.org/viewvc?rev=1299356&view=rev
Log:
Fixed a couple of unsupported iterator usages.
Modified:
axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/databinding/utils/MultirefHelper.java
axis/axis2/java/core/trunk/modules/adb/test/org/apache/axis2/databinding/utils/MultirefHelperTest.java
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/impl/XMLSpineImpl.java
axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPElementImpl.java
Modified: axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/databinding/utils/MultirefHelper.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/databinding/utils/MultirefHelper.java?rev=1299356&r1=1299355&r2=1299356&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/databinding/utils/MultirefHelper.java (original)
+++ axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/databinding/utils/MultirefHelper.java Sun Mar 11 12:55:29 2012
@@ -162,8 +162,8 @@ public class MultirefHelper {
OMElement omElement = (OMElement)childs.next();
OMAttribute id = omElement.getAttribute(new QName("id"));
if (id != null) {
- omElement.build();
- elementMap.put(id.getAttributeValue(), omElement.detach());
+ childs.remove();
+ elementMap.put(id.getAttributeValue(), omElement);
}
}
filledTable = true;
Modified: axis/axis2/java/core/trunk/modules/adb/test/org/apache/axis2/databinding/utils/MultirefHelperTest.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/adb/test/org/apache/axis2/databinding/utils/MultirefHelperTest.java?rev=1299356&r1=1299355&r2=1299356&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/adb/test/org/apache/axis2/databinding/utils/MultirefHelperTest.java (original)
+++ axis/axis2/java/core/trunk/modules/adb/test/org/apache/axis2/databinding/utils/MultirefHelperTest.java Sun Mar 11 12:55:29 2012
@@ -105,6 +105,7 @@ public class MultirefHelperTest extends
OMElement omElement = null;
for (Iterator iter = generatedElement.getChildElements();iter.hasNext();){
omElement = (OMElement) iter.next();
+ iter.remove();
soapEnvelope.getBody().addChild(omElement);
}
Modified: axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/impl/XMLSpineImpl.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/impl/XMLSpineImpl.java?rev=1299356&r1=1299355&r2=1299356&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/impl/XMLSpineImpl.java (original)
+++ axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/impl/XMLSpineImpl.java Sun Mar 11 12:55:29 2012
@@ -475,6 +475,9 @@ class XMLSpineImpl implements XMLSpine {
// the requested namespace/localPart
if (om.getNamespace().getNamespaceURI().equals(namespace) &&
om.getLocalName().equals(localPart)) {
+ // _getBlockFromOMElement may replace the current element; move the iterator to the
+ // next element to avoid ConcurrentModificationException
+ it.hasNext();
Block block = _getBlockFromOMElement(om, context, blockFactory, false);
blocks.add(block);
}
Modified: axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPElementImpl.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPElementImpl.java?rev=1299356&r1=1299355&r2=1299356&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPElementImpl.java (original)
+++ axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPElementImpl.java Sun Mar 11 12:55:29 2012
@@ -518,10 +518,8 @@ public class SOAPElementImpl extends Nod
//We will get all the children and iteratively call the detach() on all of 'em.
Iterator childIter = element.getChildElements();
while (childIter.hasNext()) {
- Object o = childIter.next();
- if (o instanceof org.apache.axiom.om.OMNode) {
- ((org.apache.axiom.om.OMNode)o).detach();
- }
+ childIter.next();
+ childIter.remove();
}
}