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 2011/07/13 09:33:08 UTC
svn commit: r1145894 - in /openejb/trunk/openejb3:
assembly/openejb-tomcat/openejb-tomcat-webapp/pom.xml
container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java
Author: rmannibucau
Date: Wed Jul 13 07:33:08 2011
New Revision: 1145894
URL: http://svn.apache.org/viewvc?rev=1145894&view=rev
Log:
OPENEJB-1237 looking into context params to find the Application class if it exists otherwise use the scanned one
Modified:
openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-webapp/pom.xml
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java
Modified: openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-webapp/pom.xml
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-webapp/pom.xml?rev=1145894&r1=1145893&r2=1145894&view=diff
==============================================================================
--- openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-webapp/pom.xml (original)
+++ openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-webapp/pom.xml Wed Jul 13 07:33:08 2011
@@ -151,11 +151,29 @@
</dependency>
<dependency>
<groupId>org.apache.openejb</groupId>
+ <artifactId>openejb-rest</artifactId>
+ <version>${project.version}</version>
+ <scope>runtime</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.openejb</groupId>
+ <artifactId>openejb-cxf-transport</artifactId>
+ <version>${project.version}</version>
+ <scope>runtime</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.openejb</groupId>
<artifactId>openejb-cxf</artifactId>
<version>${project.version}</version>
<scope>runtime</scope>
</dependency>
<dependency>
+ <groupId>org.apache.openejb</groupId>
+ <artifactId>openejb-cxf-rs</artifactId>
+ <version>${project.version}</version>
+ <scope>runtime</scope>
+ </dependency>
+ <dependency>
<groupId>org.apache.geronimo.javamail</groupId>
<artifactId>geronimo-javamail_1.4_mail</artifactId>
<scope>runtime</scope>
Modified: openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java?rev=1145894&r1=1145893&r2=1145894&view=diff
==============================================================================
--- openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java (original)
+++ openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java Wed Jul 13 07:33:08 2011
@@ -177,6 +177,7 @@ import org.apache.openejb.jee.MethodPara
import org.apache.openejb.jee.MethodPermission;
import org.apache.openejb.jee.NamedMethod;
import org.apache.openejb.jee.OutboundResourceAdapter;
+import org.apache.openejb.jee.ParamValue;
import org.apache.openejb.jee.PersistenceContextRef;
import org.apache.openejb.jee.PersistenceContextType;
import org.apache.openejb.jee.PersistenceUnitRef;
@@ -1437,9 +1438,15 @@ public class AnnotationDeployer implemen
ClassLoader classLoader = webModule.getClassLoader();
+ final String webXmlApplication = webApp.contextParamsAsMap().get("javax.ws.rs.Application");
+ if (webXmlApplication != null) {
+ webModule.getRestApplications().clear();
+ webModule.getRestApplications().add(webXmlApplication);
+ }
+
for (String application : webModule.getRestApplications()) {
if (application != null) {
- Class<?> clazz = null;
+ Class<?> clazz;
try {
clazz = classLoader.loadClass(application);
classes.add(clazz);
@@ -1447,15 +1454,13 @@ public class AnnotationDeployer implemen
throw new OpenEJBException("Unable to load Application class: " + application, e);
}
- if (clazz != null) {
- try {
- Application app = Application.class.cast(clazz.newInstance());
- classes.addAll(app.getClasses());
- } catch (InstantiationException e) {
- throw new OpenEJBException("Unable to instantiate Application class: " + application, e);
- } catch (IllegalAccessException e) {
- throw new OpenEJBException("Unable to access Application class: " + application, e);
- }
+ try {
+ Application app = Application.class.cast(clazz.newInstance());
+ classes.addAll(app.getClasses());
+ } catch (InstantiationException e) {
+ throw new OpenEJBException("Unable to instantiate Application class: " + application, e);
+ } catch (IllegalAccessException e) {
+ throw new OpenEJBException("Unable to access Application class: " + application, e);
}
}
}