Author: ningjiang
Date: Wed Jun 22 03:45:47 2011
New Revision: 1138298

URL: http://svn.apache.org/viewvc?rev=1138298&view=rev
Log:
CAMEL-4137 reset the thread context classloader in the CxfNamespaceHandler

Modified:
    
camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/blueprint/CxfNamespaceHandler.java

Modified: 
camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/blueprint/CxfNamespaceHandler.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/blueprint/CxfNamespaceHandler.java?rev=1138298&r1=1138297&r2=1138298&view=diff
==============================================================================
--- 
camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/blueprint/CxfNamespaceHandler.java
 (original)
+++ 
camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/blueprint/CxfNamespaceHandler.java
 Wed Jun 22 03:45:47 2011
@@ -42,17 +42,21 @@ public class CxfNamespaceHandler impleme
     }
 
     public Metadata parse(Element element, ParserContext context) {
-        
Thread.currentThread().setContextClassLoader(BlueprintBus.class.getClassLoader());
-        String s = element.getLocalName();
-        if ("cxfEndpoint".equals(s)) {
-            return new EndpointDefinitionParser().parse(element, context);
+        ClassLoader oldClassLoader = 
Thread.currentThread().getContextClassLoader();
+        Metadata answer = null;
+        try {
+            
Thread.currentThread().setContextClassLoader(BlueprintBus.class.getClassLoader());
+            String s = element.getLocalName();
+            if ("cxfEndpoint".equals(s)) {
+                answer = new EndpointDefinitionParser().parse(element, 
context);
+            }
+        } finally {
+            Thread.currentThread().setContextClassLoader(oldClassLoader);
         }
-        
-        return null;
+        return answer;
     }
 
     public ComponentMetadata decorate(Node node, ComponentMetadata 
componentMetadata, ParserContext parserContext) {
-        System.out.println("Decorate the node " + node + " " + 
componentMetadata);
         return null;
     }
 }


Reply via email to