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 2013/10/29 17:40:39 UTC
svn commit: r1536800 - in /tomee/tomee/trunk/container/openejb-core/src:
main/java/org/apache/openejb/config/FinderFactory.java
test/java/org/apache/openejb/meta/MetaTest.java
Author: rmannibucau
Date: Tue Oct 29 16:40:38 2013
New Revision: 1536800
URL: http://svn.apache.org/r1536800
Log:
seems MetaRunner needs finder.link() so forcing the linkage
Modified:
tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/config/FinderFactory.java
tomee/tomee/trunk/container/openejb-core/src/test/java/org/apache/openejb/meta/MetaTest.java
Modified: tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/config/FinderFactory.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/config/FinderFactory.java?rev=1536800&r1=1536799&r2=1536800&view=diff
==============================================================================
--- tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/config/FinderFactory.java (original)
+++ tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/config/FinderFactory.java Tue Oct 29 16:40:38 2013
@@ -62,7 +62,7 @@ public class FinderFactory {
}
public IAnnotationFinder create(DeploymentModule module) throws Exception {
- IAnnotationFinder finder;
+ final AnnotationFinder finder;
if (module instanceof WebModule) {
WebModule webModule = (WebModule) module;
final AnnotationFinder annotationFinder = newFinder(new WebappAggregatedArchive(webModule, webModule.getScannableUrls()));
@@ -92,13 +92,14 @@ public class FinderFactory {
if (module instanceof Module) {
final DebugArchive archive = new DebugArchive(new ConfigurableClasspathArchive((Module) module, url));
- final AnnotationFinder annotationFinder = newFinder(archive);
- enableFinderOptions(annotationFinder);
- finder = annotationFinder;
+ finder = newFinder(archive);
} else {
- final AnnotationFinder annotationFinder = newFinder(new DebugArchive(new ConfigurableClasspathArchive(module.getClassLoader(), url)));
- enableFinderOptions(annotationFinder);
- finder = annotationFinder;
+ finder = newFinder(new DebugArchive(new ConfigurableClasspathArchive(module.getClassLoader(), url)));
+ }
+ if ("true".equals(module.getProperties().getProperty(FORCE_LINK, "false"))) {
+ finder.link();
+ } else {
+ enableFinderOptions(finder);
}
} else {
finder = new AnnotationFinder(new ClassesArchive());
Modified: tomee/tomee/trunk/container/openejb-core/src/test/java/org/apache/openejb/meta/MetaTest.java
URL: http://svn.apache.org/viewvc/tomee/tomee/trunk/container/openejb-core/src/test/java/org/apache/openejb/meta/MetaTest.java?rev=1536800&r1=1536799&r2=1536800&view=diff
==============================================================================
--- tomee/tomee/trunk/container/openejb-core/src/test/java/org/apache/openejb/meta/MetaTest.java (original)
+++ tomee/tomee/trunk/container/openejb-core/src/test/java/org/apache/openejb/meta/MetaTest.java Tue Oct 29 16:40:38 2013
@@ -27,6 +27,7 @@ import org.apache.openejb.assembler.clas
import org.apache.openejb.config.AppModule;
import org.apache.openejb.config.ConfigurationFactory;
import org.apache.openejb.config.EjbModule;
+import org.apache.openejb.config.FinderFactory;
import org.apache.openejb.jee.ContainerTransaction;
import org.apache.openejb.jee.EjbJar;
import org.apache.openejb.jee.EnterpriseBean;
@@ -163,6 +164,9 @@ public @interface MetaTest {
}
final AppModule app = factory.loadApplication(this.getClass().getClassLoader(), "test", files);
+ for (final EjbModule ejbModule : app.getEjbModules()) {
+ ejbModule.getProperties().setProperty(FinderFactory.FORCE_LINK, Boolean.TRUE.toString());
+ }
OpenEjbConfiguration conf = factory.getOpenEjbConfiguration();
@@ -249,7 +253,9 @@ public @interface MetaTest {
OpenejbJar openejbJar = new OpenejbJar();
openejbJar.addEjbDeployment(ejbJar.getEnterpriseBeans()[0]).setContainerId("foo");
- return new EjbModule(ejbJar, openejbJar);
+ final EjbModule ejbModule = new EjbModule(ejbJar, openejbJar);
+ ejbModule.getProperties().setProperty(FinderFactory.FORCE_LINK, Boolean.TRUE.toString());
+ return ejbModule;
}
private <T> T newBean(Class<T> beanType, Class ejbClass) {