Author: darran.lofthouse(a)jboss.com
Date: 2009-04-24 09:24:15 -0400 (Fri, 24 Apr 2009)
New Revision: 9870
Modified:
stack/native/branches/jbossws-native-2.0.1.SP2_CP05_JBPAPP-1937/src/main/java/org/jboss/ws/core/jaxrpc/handler/HandlerDelegateJAXRPC.java
stack/native/branches/jbossws-native-2.0.1.SP2_CP05_JBPAPP-1937/src/main/java/org/jboss/ws/core/jaxws/handler/HandlerDelegateJAXWS.java
Log:
[JBPAPP-1937] ConcurrentModificationException in initHandlerChain().
Modified:
stack/native/branches/jbossws-native-2.0.1.SP2_CP05_JBPAPP-1937/src/main/java/org/jboss/ws/core/jaxrpc/handler/HandlerDelegateJAXRPC.java
===================================================================
---
stack/native/branches/jbossws-native-2.0.1.SP2_CP05_JBPAPP-1937/src/main/java/org/jboss/ws/core/jaxrpc/handler/HandlerDelegateJAXRPC.java 2009-04-24
13:22:02 UTC (rev 9869)
+++
stack/native/branches/jbossws-native-2.0.1.SP2_CP05_JBPAPP-1937/src/main/java/org/jboss/ws/core/jaxrpc/handler/HandlerDelegateJAXRPC.java 2009-04-24
13:24:15 UTC (rev 9870)
@@ -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-1937/src/main/java/org/jboss/ws/core/jaxws/handler/HandlerDelegateJAXWS.java
===================================================================
---
stack/native/branches/jbossws-native-2.0.1.SP2_CP05_JBPAPP-1937/src/main/java/org/jboss/ws/core/jaxws/handler/HandlerDelegateJAXWS.java 2009-04-24
13:22:02 UTC (rev 9869)
+++
stack/native/branches/jbossws-native-2.0.1.SP2_CP05_JBPAPP-1937/src/main/java/org/jboss/ws/core/jaxws/handler/HandlerDelegateJAXWS.java 2009-04-24
13:24:15 UTC (rev 9870)
@@ -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