Author: davsclaus
Date: Fri Aug 19 07:48:21 2011
New Revision: 1159527

URL: http://svn.apache.org/viewvc?rev=1159527&view=rev
Log:
Merged revisions 1159171 via svnmerge from 
https://svn.apache.org/repos/asf/camel/trunk


Added:
    
camel/branches/camel-2.8.x/tests/camel-itest-osgi/src/test/java/org/apache/camel/itest/osgi/blueprint/CamelBlueprintTcclTest.java
      - copied unchanged from r1159171, 
camel/trunk/tests/camel-itest-osgi/src/test/java/org/apache/camel/itest/osgi/blueprint/CamelBlueprintTcclTest.java
    
camel/branches/camel-2.8.x/tests/camel-itest-osgi/src/test/resources/org/apache/camel/itest/osgi/blueprint/blueprint-tccl.xml
      - copied unchanged from r1159171, 
camel/trunk/tests/camel-itest-osgi/src/test/resources/org/apache/camel/itest/osgi/blueprint/blueprint-tccl.xml
Modified:
    camel/branches/camel-2.8.x/   (props changed)
    
camel/branches/camel-2.8.x/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintCamelContext.java
    
camel/branches/camel-2.8.x/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/utils/BundleDelegatingClassLoader.java

Propchange: camel/branches/camel-2.8.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Aug 19 07:48:21 2011
@@ -1 +1 @@
-/camel/trunk:1155230,1156108,1156260,1156524,1157348,1157798,1157831,1157878,1158153,1159174
+/camel/trunk:1155230,1156108,1156260,1156524,1157348,1157798,1157831,1157878,1158153,1159171,1159174

Propchange: camel/branches/camel-2.8.x/
------------------------------------------------------------------------------
Binary property 'svnmerge-integrated' - no diff available.

Modified: 
camel/branches/camel-2.8.x/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintCamelContext.java
URL: 
http://svn.apache.org/viewvc/camel/branches/camel-2.8.x/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintCamelContext.java?rev=1159527&r1=1159526&r2=1159527&view=diff
==============================================================================
--- 
camel/branches/camel-2.8.x/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintCamelContext.java
 (original)
+++ 
camel/branches/camel-2.8.x/components/camel-blueprint/src/main/java/org/apache/camel/blueprint/BlueprintCamelContext.java
 Fri Aug 19 07:48:21 2011
@@ -24,6 +24,7 @@ import org.apache.camel.core.osgi.OsgiFa
 import org.apache.camel.core.osgi.OsgiPackageScanClassResolver;
 import org.apache.camel.core.osgi.OsgiTypeConverter;
 import org.apache.camel.core.osgi.utils.BundleContextUtils;
+import org.apache.camel.core.osgi.utils.BundleDelegatingClassLoader;
 import org.apache.camel.impl.DefaultCamelContext;
 import org.apache.camel.spi.FactoryFinder;
 import org.apache.camel.spi.Registry;
@@ -52,6 +53,7 @@ public class BlueprintCamelContext exten
         setComponentResolver(new BlueprintComponentResolver(bundleContext));
         setLanguageResolver(new BlueprintLanguageResolver(bundleContext));
         setDataFormatResolver(new BlueprintDataFormatResolver(bundleContext));
+        setApplicationContextClassLoader(new 
BundleDelegatingClassLoader(bundleContext.getBundle()));
     }
 
     public BundleContext getBundleContext() {
@@ -71,7 +73,14 @@ public class BlueprintCamelContext exten
     }
 
     public void init() throws Exception {
-        maybeStart();
+        final ClassLoader original = 
Thread.currentThread().getContextClassLoader();
+        try {
+            // let's set a more suitable TCCL while starting the context
+            
Thread.currentThread().setContextClassLoader(getApplicationContextClassLoader());
+            maybeStart();
+        } finally {
+            Thread.currentThread().setContextClassLoader(original);
+        }
     }
 
     private void maybeStart() throws Exception {

Modified: 
camel/branches/camel-2.8.x/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/utils/BundleDelegatingClassLoader.java
URL: 
http://svn.apache.org/viewvc/camel/branches/camel-2.8.x/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/utils/BundleDelegatingClassLoader.java?rev=1159527&r1=1159526&r2=1159527&view=diff
==============================================================================
--- 
camel/branches/camel-2.8.x/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/utils/BundleDelegatingClassLoader.java
 (original)
+++ 
camel/branches/camel-2.8.x/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/utils/BundleDelegatingClassLoader.java
 Fri Aug 19 07:48:21 2011
@@ -87,4 +87,9 @@ public class BundleDelegatingClassLoader
     public Bundle getBundle() {
         return bundle;
     }
+
+    @Override
+    public String toString() {
+        return String.format("BundleDelegatingClassLoader(%s)", bundle);
+    }
 }


Reply via email to