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