Author: darran.lofthouse(a)jboss.com
Date: 2009-03-12 10:42:57 -0400 (Thu, 12 Mar 2009)
New Revision: 9593
Modified:
stack/native/branches/jbossws-native-2.0.1.SP2_CP05_JBPAPP-1772/src/main/java/org/jboss/ws/core/jaxrpc/handler/HandlerDelegateJAXRPC.java
stack/native/branches/jbossws-native-2.0.1.SP2_CP05_JBPAPP-1772/src/main/java/org/jboss/ws/core/jaxws/handler/HandlerDelegateJAXWS.java
Log:
[JBPAPP-1772] ConcurrentModificationException in initHandlerChain().
Modified:
stack/native/branches/jbossws-native-2.0.1.SP2_CP05_JBPAPP-1772/src/main/java/org/jboss/ws/core/jaxrpc/handler/HandlerDelegateJAXRPC.java
===================================================================
---
stack/native/branches/jbossws-native-2.0.1.SP2_CP05_JBPAPP-1772/src/main/java/org/jboss/ws/core/jaxrpc/handler/HandlerDelegateJAXRPC.java 2009-03-12
14:32:42 UTC (rev 9592)
+++
stack/native/branches/jbossws-native-2.0.1.SP2_CP05_JBPAPP-1772/src/main/java/org/jboss/ws/core/jaxrpc/handler/HandlerDelegateJAXRPC.java 2009-03-12
14:42:57 UTC (rev 9593)
@@ -88,10 +88,16 @@
// Initialize the handler chain
if (isInitialized() == false)
{
- initHandlerChain(sepMetaData, HandlerType.PRE);
- initHandlerChain(sepMetaData, HandlerType.ENDPOINT);
- initHandlerChain(sepMetaData, HandlerType.POST);
- setInitialized(true);
+ synchronized (sepMetaData)
+ {
+ if (isInitialized() == false)
+ {
+ initHandlerChain(sepMetaData, HandlerType.PRE);
+ initHandlerChain(sepMetaData, HandlerType.ENDPOINT);
+ initHandlerChain(sepMetaData, HandlerType.POST);
+ setInitialized(true);
+ }
+ }
}
boolean status = true;
Modified:
stack/native/branches/jbossws-native-2.0.1.SP2_CP05_JBPAPP-1772/src/main/java/org/jboss/ws/core/jaxws/handler/HandlerDelegateJAXWS.java
===================================================================
---
stack/native/branches/jbossws-native-2.0.1.SP2_CP05_JBPAPP-1772/src/main/java/org/jboss/ws/core/jaxws/handler/HandlerDelegateJAXWS.java 2009-03-12
14:32:42 UTC (rev 9592)
+++
stack/native/branches/jbossws-native-2.0.1.SP2_CP05_JBPAPP-1772/src/main/java/org/jboss/ws/core/jaxws/handler/HandlerDelegateJAXWS.java 2009-03-12
14:42:57 UTC (rev 9593)
@@ -77,11 +77,17 @@
// Initialize the handler chain
if (isInitialized() == false)
{
- EndpointConfigMetaData ecmd = sepMetaData.getEndpointConfigMetaData();
- resolver.initHandlerChain(ecmd, HandlerType.PRE, true);
- resolver.initHandlerChain(ecmd, HandlerType.ENDPOINT, true);
- resolver.initHandlerChain(ecmd, HandlerType.POST, true);
- setInitialized(true);
+ synchronized (resolver)
+ {
+ if (isInitialized() == false)
+ {
+ EndpointConfigMetaData ecmd = sepMetaData.getEndpointConfigMetaData();
+ resolver.initHandlerChain(ecmd, HandlerType.PRE, true);
+ resolver.initHandlerChain(ecmd, HandlerType.ENDPOINT, true);
+ resolver.initHandlerChain(ecmd, HandlerType.POST, true);
+ setInitialized(true);
+ }
+ }
}
HandlerChainExecutor executor = createExecutor(sepMetaData, type);
Show replies by date