You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ni...@apache.org on 2011/06/22 05:45:47 UTC

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

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;
     }
 }