You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by db...@apache.org on 2011/03/02 00:29:03 UTC

svn commit: r1076049 - in /openejb/trunk/openejb3: ./ assembly/openejb-tomcat/openejb-tomcat-catalina/ assembly/openejb-tomcat/openejb-tomcat-catalina/src/main/java/org/apache/openejb/tomcat/catalina/ assembly/openejb-tomcat/openejb-tomcat-common/ asse...

Author: dblevins
Date: Tue Mar  1 23:29:03 2011
New Revision: 1076049

URL: http://svn.apache.org/viewvc?rev=1076049&view=rev
Log:
Compile against 7.0.8

Modified:
    openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/pom.xml
    openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/src/main/java/org/apache/openejb/tomcat/catalina/BackportUtil.java
    openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/src/main/java/org/apache/openejb/tomcat/catalina/GlobalListenerSupport.java
    openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/src/main/java/org/apache/openejb/tomcat/catalina/TomcatWebAppBuilder.java
    openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-common/pom.xml
    openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-loader/pom.xml
    openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-webapp/pom.xml
    openejb/trunk/openejb3/assembly/openejb-webapp/pom.xml
    openejb/trunk/openejb3/pom.xml

Modified: openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/pom.xml
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/pom.xml?rev=1076049&r1=1076048&r2=1076049&view=diff
==============================================================================
--- openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/pom.xml (original)
+++ openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/pom.xml Tue Mar  1 23:29:03 2011
@@ -86,7 +86,7 @@
     </dependency>
     <dependency>
       <groupId>org.apache.tomcat</groupId>
-      <artifactId>catalina</artifactId>
+      <artifactId>tomcat-catalina</artifactId>
     </dependency>
   </dependencies>
 </project>

Modified: openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/src/main/java/org/apache/openejb/tomcat/catalina/BackportUtil.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/src/main/java/org/apache/openejb/tomcat/catalina/BackportUtil.java?rev=1076049&r1=1076048&r2=1076049&view=diff
==============================================================================
--- openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/src/main/java/org/apache/openejb/tomcat/catalina/BackportUtil.java (original)
+++ openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/src/main/java/org/apache/openejb/tomcat/catalina/BackportUtil.java Tue Mar  1 23:29:03 2011
@@ -25,7 +25,11 @@ import org.apache.catalina.deploy.Naming
 import org.apache.openejb.tomcat.common.TomcatVersion;
 
 import javax.servlet.Servlet;
+import java.io.File;
 import java.lang.reflect.Field;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+import java.net.MalformedURLException;
 import java.security.AccessController;
 import java.security.PrivilegedAction;
 
@@ -37,14 +41,27 @@ public class BackportUtil {
     private static API api;
 
     static {
-        if (TomcatVersion.v6.isTheVersion()) {
-            api = new Tomcat6();
-        } else {
-            api = new Tomcat55();
+        switch (TomcatVersion.get()) {
+            case v7: {
+                api = new Tomcat7();
+                break;
+            }
+            case v6: {
+                api = new Tomcat6();
+                break;
+            }
+            case v55: {
+                api = new Tomcat55();
+                break;
+            }
+            default: {
+                // TODO Perhaps fail or log
+                api = new Tomcat55();
+            }
         }
     }
 
-    private static API getAPI() {
+    public static API getAPI() {
         return api;
     }
 
@@ -72,8 +89,20 @@ public class BackportUtil {
         NamingContextListener getNamingContextListener(StandardContext standardContext);
 
         void removeService(NamingContextListener namingContextListener, String serviceName);
+
+        void setConfigFile(StandardContext standardContext, File contextXmlFile);
     }
 
+    public static class Tomcat7 extends Tomcat6 implements API {
+        @Override
+        public void setConfigFile(StandardContext standardContext, File contextXmlFile) {
+            try {
+                standardContext.setConfigFile(contextXmlFile.toURI().toURL());
+            } catch (MalformedURLException e) {
+                throw new RuntimeException(e);
+            }
+        }
+    }
 
     public static class Tomcat6 implements API {
         public Servlet getServlet(Wrapper wrapper) {
@@ -92,6 +121,16 @@ public class BackportUtil {
         public void removeService(NamingContextListener namingContextListener, String serviceName) {
             namingContextListener.removeService(serviceName);
         }
+
+        @Override
+        public void setConfigFile(StandardContext standardContext, File contextXmlFile) {
+            try {
+                Method method = StandardContext.class.getMethod("setConfigFile", String.class);
+                method.invoke(standardContext, contextXmlFile.getAbsolutePath());
+            } catch (Exception e) {
+                throw new IllegalStateException("Cannot setConfigFile", e);
+            }
+        }
     }
 
     public static class Tomcat55 implements API {
@@ -127,6 +166,16 @@ public class BackportUtil {
         public void removeService(NamingContextListener namingContextListener, String serviceName) {
         }
 
+        @Override
+        public void setConfigFile(StandardContext standardContext, File contextXmlFile) {
+            try {
+                Method method = StandardContext.class.getMethod("setConfigFile", String.class);
+                method.invoke(standardContext, contextXmlFile.getAbsolutePath());
+            } catch (Exception e) {
+                throw new IllegalStateException("Cannot setConfigFile", e);
+            }
+        }
+
         private Field getField(final Class clazz, final String name) {
             return AccessController.doPrivileged(new PrivilegedAction<Field>() {
                 public Field run() {

Modified: openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/src/main/java/org/apache/openejb/tomcat/catalina/GlobalListenerSupport.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/src/main/java/org/apache/openejb/tomcat/catalina/GlobalListenerSupport.java?rev=1076049&r1=1076048&r2=1076049&view=diff
==============================================================================
--- openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/src/main/java/org/apache/openejb/tomcat/catalina/GlobalListenerSupport.java (original)
+++ openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/src/main/java/org/apache/openejb/tomcat/catalina/GlobalListenerSupport.java Tue Mar  1 23:29:03 2011
@@ -44,6 +44,20 @@ import java.util.Map;
 public class GlobalListenerSupport implements PropertyChangeListener, LifecycleListener {
 
     /**
+     * The LifecycleEvent type for the "component init" event.
+     * Tomcat 6.0.x only
+     * Removed in Tomcat 7
+     */
+    public static final String INIT_EVENT = "init";
+
+    /**
+     * The LifecycleEvent type for the "component destroy" event.
+     * Tomcat 6.0.x only
+     * Removed in Tomcat 7
+     */
+    public static final String DESTROY_EVENT = "destroy";
+
+    /**
      * Tomcat server instance
      */
     private final StandardServer standardServer;
@@ -75,7 +89,7 @@ public class GlobalListenerSupport imple
             StandardContext standardContext = (StandardContext) source;
             String type = event.getType();
             
-            if (Lifecycle.INIT_EVENT.equals(type)) {
+            if (INIT_EVENT.equals(type) || Lifecycle.BEFORE_INIT_EVENT.equals(type)) {
             	contextListener.init(standardContext);
             } else if (Lifecycle.BEFORE_START_EVENT.equals(type)) {
                 contextListener.beforeStart(standardContext);
@@ -97,7 +111,7 @@ public class GlobalListenerSupport imple
                 contextListener.stop(standardContext);
             } else if (Lifecycle.AFTER_STOP_EVENT.equals(type)) {
                 contextListener.afterStop(standardContext);
-            } else if (Lifecycle.DESTROY_EVENT.equals(type)) {
+            } else if (DESTROY_EVENT.equals(type) || Lifecycle.AFTER_DESTROY_EVENT.equals(type)) {
                 contextListener.destroy(standardContext);
             }
         } else if (source instanceof StandardHost) {

Modified: openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/src/main/java/org/apache/openejb/tomcat/catalina/TomcatWebAppBuilder.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/src/main/java/org/apache/openejb/tomcat/catalina/TomcatWebAppBuilder.java?rev=1076049&r1=1076048&r2=1076049&view=diff
==============================================================================
--- openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/src/main/java/org/apache/openejb/tomcat/catalina/TomcatWebAppBuilder.java (original)
+++ openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-catalina/src/main/java/org/apache/openejb/tomcat/catalina/TomcatWebAppBuilder.java Tue Mar  1 23:29:03 2011
@@ -197,9 +197,10 @@ public class TomcatWebAppBuilder impleme
         for (WebAppInfo webApp : appInfo.webApps) {
             if (getContextInfo(webApp) == null) {
                 StandardContext standardContext = new StandardContext();
-                String contextXmlFile = webApp.path + "/META-INF/context.xml";
-                if (new File(contextXmlFile).exists()) {
-                    standardContext.setConfigFile(contextXmlFile);
+                String s = File.pathSeparator;
+                File contextXmlFile = new File(webApp.path + s + "META-INF" + s + "context.xml");
+                if (contextXmlFile.exists()) {
+                    BackportUtil.getAPI().setConfigFile(standardContext, contextXmlFile);
                     standardContext.setOverride(true);
                 }
                 ContextConfig contextConfig = new ContextConfig();

Modified: openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-common/pom.xml
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-common/pom.xml?rev=1076049&r1=1076048&r2=1076049&view=diff
==============================================================================
--- openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-common/pom.xml (original)
+++ openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-common/pom.xml Tue Mar  1 23:29:03 2011
@@ -63,7 +63,7 @@
     </dependency>
     <dependency>
       <groupId>org.apache.tomcat</groupId>
-      <artifactId>catalina</artifactId>
+      <artifactId>tomcat-catalina</artifactId>
     </dependency>
   </dependencies>
 </project>

Modified: openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-loader/pom.xml
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-loader/pom.xml?rev=1076049&r1=1076048&r2=1076049&view=diff
==============================================================================
--- openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-loader/pom.xml (original)
+++ openejb/trunk/openejb3/assembly/openejb-tomcat/openejb-tomcat-loader/pom.xml Tue Mar  1 23:29:03 2011
@@ -37,7 +37,7 @@
     </dependency>
     <dependency>
       <groupId>org.apache.tomcat</groupId>
-      <artifactId>catalina</artifactId>
+      <artifactId>tomcat-catalina</artifactId>
     </dependency>
   </dependencies>
 </project>

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=1076049&r1=1076048&r2=1076049&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 Tue Mar  1 23:29:03 2011
@@ -216,7 +216,7 @@
     </dependency>
     <dependency>
       <groupId>org.apache.tomcat</groupId>
-      <artifactId>catalina</artifactId>
+      <artifactId>tomcat-catalina</artifactId>
     </dependency>
     <dependency>
       <groupId>org.apache.myfaces.core</groupId>

Modified: openejb/trunk/openejb3/assembly/openejb-webapp/pom.xml
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/assembly/openejb-webapp/pom.xml?rev=1076049&r1=1076048&r2=1076049&view=diff
==============================================================================
--- openejb/trunk/openejb3/assembly/openejb-webapp/pom.xml (original)
+++ openejb/trunk/openejb3/assembly/openejb-webapp/pom.xml Tue Mar  1 23:29:03 2011
@@ -216,7 +216,7 @@
     </dependency>
     <dependency>
       <groupId>org.apache.tomcat</groupId>
-      <artifactId>catalina</artifactId>
+      <artifactId>tomcat-catalina</artifactId>
     </dependency>
   </dependencies>
 </project>

Modified: openejb/trunk/openejb3/pom.xml
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/pom.xml?rev=1076049&r1=1076048&r2=1076049&view=diff
==============================================================================
--- openejb/trunk/openejb3/pom.xml (original)
+++ openejb/trunk/openejb3/pom.xml Tue Mar  1 23:29:03 2011
@@ -109,7 +109,7 @@
     <openejb.osgi.symbolic.name>${project.groupId}.${project.artifactId}</openejb.osgi.symbolic.name>
 
     <!-- Used in assembly/openejb-tomcat* projects  -->
-    <tomcatVersion>6.0.29</tomcatVersion>
+    <tomcatVersion>7.0.8</tomcatVersion>
 
     <!--
        - http://docs.codehaus.org/display/MAVENUSER/POM+Element+for+Source+File+Encoding
@@ -950,7 +950,7 @@
       </dependency>
       <dependency>
         <groupId>org.apache.tomcat</groupId>
-        <artifactId>catalina</artifactId>
+        <artifactId>tomcat-catalina</artifactId>
         <version>${tomcatVersion}</version>
         <optional>true</optional>
       </dependency>