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) {