You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by sc...@apache.org on 2007/04/11 21:24:38 UTC

svn commit: r527622 - /webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/JAXBUtils.java

Author: scheu
Date: Wed Apr 11 12:24:38 2007
New Revision: 527622

URL: http://svn.apache.org/viewvc?view=rev&rev=527622
Log:
AXIS2-2509
Contributor:Rich Scheuerle
Quick change to add appopriate synchronization to the JAXBContext caching code

Modified:
    webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/JAXBUtils.java

Modified: webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/JAXBUtils.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/JAXBUtils.java?view=diff&rev=527622&r1=527621&r2=527622
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/JAXBUtils.java (original)
+++ webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/JAXBUtils.java Wed Apr 11 12:24:38 2007
@@ -139,12 +139,10 @@
             adjustPoolSize(innerMap);
 
             // A pooled context was not found, so create one and put it in the map.
-
-            // A copy is made of the original list of packages because createJAXBContext may 
-            // prune the list.
-            TreeSet<String> origContextPackages = new TreeSet<String>(contextPackages);
-            contextValue = createJAXBContextValue(contextPackages, cl);
-
+            synchronized(contextPackages) {
+               // synchronized on contextPackages because this method may prune the contextPackages
+               contextValue = createJAXBContextValue(contextPackages, cl);
+            }
             // Put the new context in the map keyed by both the original and current list of packages
             innerMap.put(key, contextValue);
             innerMap.put(contextPackages.toString(), contextValue);



---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org