Author: dblevins
Date: Tue Mar  1 00:28:18 2011
New Revision: 1075598

URL: http://svn.apache.org/viewvc?rev=1075598&view=rev
Log:
Patch from Shawn Jiang, OPENEJB-1435: Some changes in webapp scanning logic 
brought some regressions to geronimo.
Might possibly cause JPA issues, but the TCK should tell us for sure

Modified:
    
openejb/trunk/openejb3/container/openejb-osgi-core/src/main/java/org/apache/openejb/osgi/core/BundleFinderFactory.java

Modified: 
openejb/trunk/openejb3/container/openejb-osgi-core/src/main/java/org/apache/openejb/osgi/core/BundleFinderFactory.java
URL: 
http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-osgi-core/src/main/java/org/apache/openejb/osgi/core/BundleFinderFactory.java?rev=1075598&r1=1075597&r2=1075598&view=diff
==============================================================================
--- 
openejb/trunk/openejb3/container/openejb-osgi-core/src/main/java/org/apache/openejb/osgi/core/BundleFinderFactory.java
 (original)
+++ 
openejb/trunk/openejb3/container/openejb-osgi-core/src/main/java/org/apache/openejb/osgi/core/BundleFinderFactory.java
 Tue Mar  1 00:28:18 2011
@@ -35,9 +35,19 @@ public class BundleFinderFactory extends
 
     @Override
     public AbstractFinder create(DeploymentModule module) throws Exception {
+        
         ClassLoader moduleCL = module.getClassLoader();
+        
+        while (!(moduleCL instanceof BundleReference)) {
 
-        if (moduleCL instanceof BundleReference) {
+            moduleCL = moduleCL.getParent();
+            
+            if (moduleCL == null)
+                break;
+
+        }
+        
+        if (moduleCL != null && moduleCL instanceof BundleReference) {
             Bundle bundle = ((BundleReference) moduleCL).getBundle();
             BundleContext bundleContext = bundle.getBundleContext();
             ServiceReference sr = 
bundleContext.getServiceReference(PackageAdmin.class.getName());


Reply via email to