You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by rm...@apache.org on 2012/01/09 19:45:22 UTC

svn commit: r1229290 - in /openejb/trunk/openejb/osgi/openejb-core-osgi: pom.xml src/main/java/org/apache/openejb/core/osgi/impl/Deployer.java

Author: rmannibucau
Date: Mon Jan  9 18:45:20 2012
New Revision: 1229290

URL: http://svn.apache.org/viewvc?rev=1229290&view=rev
Log:
using dynamic import package as fallback instead of hardcoded values - still to validate

Modified:
    openejb/trunk/openejb/osgi/openejb-core-osgi/pom.xml
    openejb/trunk/openejb/osgi/openejb-core-osgi/src/main/java/org/apache/openejb/core/osgi/impl/Deployer.java

Modified: openejb/trunk/openejb/osgi/openejb-core-osgi/pom.xml
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/osgi/openejb-core-osgi/pom.xml?rev=1229290&r1=1229289&r2=1229290&view=diff
==============================================================================
--- openejb/trunk/openejb/osgi/openejb-core-osgi/pom.xml (original)
+++ openejb/trunk/openejb/osgi/openejb-core-osgi/pom.xml Mon Jan  9 18:45:20 2012
@@ -369,5 +369,6 @@
       org.apache.openejb.core.osgi.*;version=${openejb.osgi.export.version}
     </openejb.osgi.export>
     <openejb.bundle.activator>org.apache.openejb.core.osgi.impl.Activator</openejb.bundle.activator>
+    <openejb.osgi.dynamic.import.pkg>*</openejb.osgi.dynamic.import.pkg>
   </properties>
 </project>

Modified: openejb/trunk/openejb/osgi/openejb-core-osgi/src/main/java/org/apache/openejb/core/osgi/impl/Deployer.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb/osgi/openejb-core-osgi/src/main/java/org/apache/openejb/core/osgi/impl/Deployer.java?rev=1229290&r1=1229289&r2=1229290&view=diff
==============================================================================
--- openejb/trunk/openejb/osgi/openejb-core-osgi/src/main/java/org/apache/openejb/core/osgi/impl/Deployer.java (original)
+++ openejb/trunk/openejb/osgi/openejb-core-osgi/src/main/java/org/apache/openejb/core/osgi/impl/Deployer.java Mon Jan  9 18:45:20 2012
@@ -316,12 +316,6 @@ public class Deployer implements BundleL
             try {
                 return this.backingBundle.loadClass(name);
             } catch (ClassNotFoundException cnfe) {
-                if (isInterestingClass(name)) {
-                    final Class<?> forced = forceLoadClass(name);
-                    if (forced != null) {
-                        return forced;
-                    }
-                }
                 throw new ClassNotFoundException(name + " not found from bundle [" + backingBundle.getSymbolicName() + "]", cnfe);
             } catch (NoClassDefFoundError ncdfe) {
                 NoClassDefFoundError e = new NoClassDefFoundError(name + " not found from bundle [" + backingBundle + "]");
@@ -339,9 +333,6 @@ public class Deployer implements BundleL
             if (url != null) {
                 return url;
             }
-            if (isInterestingClass(name)) {
-                return forceLoadResource(name);
-            }
             return null;
         }
 
@@ -363,9 +354,6 @@ public class Deployer implements BundleL
             if (urls != null && urls.hasMoreElements()) {
                 return urls;
             }
-            if (isInterestingClass(name)) {
-                urls = forceLoadResources(name);
-            }
             if (urls != null && urls.hasMoreElements()) {
                 return urls;
             }
@@ -455,24 +443,4 @@ public class Deployer implements BundleL
     private static String className(final String name) {
         return name.replace('/', '.');
     }
-
-    private static boolean isInterestingClass(final String rawName) {
-        final String name = className(rawName);
-        return isJdbcDriver(name) || isJPAProvider(name) || isBValProvider(name)
-                || name.contains("org.apache.openejb") // fallback mainly for META-INF resources
-                || name.startsWith("javax.management."); // dynamic mbean feature uses this package also used by the jre itself
-    }
-
-    private static boolean isJdbcDriver(final String name) {
-        return name.startsWith("org.hsqldb") || name.startsWith("com.mysql") || name.startsWith("org.h2") || name.startsWith("oracle.jdbc");
-    }
-
-    private static boolean isJPAProvider(String name) {
-        return name.contains("openjpa") || name.startsWith("serp.") // openjpa && its dep
-                || name.startsWith("org.hibernate") || name.startsWith("oracle.toplink") || name.startsWith("org.eclipse.persistence.jpa");
-    }
-
-    private static boolean isBValProvider(String name) {
-        return name.contains("org.apache.bval") || name.startsWith("org.hibernate.validator");
-    }
 }