You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by an...@apache.org on 2008/04/27 11:49:39 UTC

svn commit: r651906 - in /incubator/tuscany/java/sca: distribution/ distribution/bundle/ distribution/manifest/ modules/host-jetty/src/main/java/org/apache/tuscany/sca/http/jetty/module/ modules/host-tomcat/src/main/java/org/apache/tuscany/sca/http/tom...

Author: antelder
Date: Sun Apr 27 02:49:38 2008
New Revision: 651906

URL: http://svn.apache.org/viewvc?rev=651906&view=rev
Log:
Update servlet hosts so that the webapp host takes precidence and include webapp host in sca all jar and exclude tomcat host from all jar 

Modified:
    incubator/tuscany/java/sca/distribution/bundle/pom.xml
    incubator/tuscany/java/sca/distribution/manifest/pom.xml
    incubator/tuscany/java/sca/distribution/pom.xml
    incubator/tuscany/java/sca/modules/host-jetty/src/main/java/org/apache/tuscany/sca/http/jetty/module/JettyRuntimeModuleActivator.java
    incubator/tuscany/java/sca/modules/host-tomcat/src/main/java/org/apache/tuscany/sca/http/tomcat/module/TomcatRuntimeModuleActivator.java
    incubator/tuscany/java/sca/modules/host-webapp/src/main/java/org/apache/tuscany/sca/host/webapp/WebAppModuleActivator.java

Modified: incubator/tuscany/java/sca/distribution/bundle/pom.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/distribution/bundle/pom.xml?rev=651906&r1=651905&r2=651906&view=diff
==============================================================================
--- incubator/tuscany/java/sca/distribution/bundle/pom.xml (original)
+++ incubator/tuscany/java/sca/distribution/bundle/pom.xml Sun Apr 27 02:49:38 2008
@@ -263,11 +263,11 @@
             <artifactId>tuscany-host-rmi</artifactId>
             <version>${pom.version}</version>
         </dependency>
-        <!-- dependency> removed for now, see TUSCANY-1572 and TUSCANY-1568
+        <dependency> 
             <groupId>${pom.groupId}</groupId>
             <artifactId>tuscany-host-webapp</artifactId>
             <version>${pom.version}</version>
-        </dependency -->
+        </dependency>
         <dependency>
             <groupId>${pom.groupId}</groupId>
             <artifactId>tuscany-host-jetty</artifactId>
@@ -277,7 +277,7 @@
             <groupId>${pom.groupId}</groupId>
             <artifactId>tuscany-host-tomcat</artifactId>
             <version>${pom.version}</version>
-        </dependency-->
+        </dependency -->
         <dependency>
             <groupId>${pom.groupId}</groupId>
             <artifactId>tuscany-interface</artifactId>
@@ -352,6 +352,12 @@
             <groupId>${pom.groupId}</groupId>
             <artifactId>tuscany-implementation-node-runtime</artifactId>
             <version>${pom.version}</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>${pom.groupId}</groupId>
+                    <artifactId>tuscany-host-tomcat</artifactId>
+                </exclusion>
+            </exclusions>
         </dependency>
         <dependency>
             <groupId>${pom.groupId}</groupId>
@@ -447,6 +453,12 @@
             <groupId>${pom.groupId}</groupId>
             <artifactId>tuscany-domain-manager</artifactId>
             <version>${pom.version}</version>
+            <exclusions> 
+                <exclusion>
+                    <groupId>${pom.groupId}</groupId>
+                    <artifactId>tuscany-host-tomcat</artifactId>
+                </exclusion>
+            </exclusions>
         </dependency>
         <dependency>
             <groupId>${pom.groupId}</groupId>

Modified: incubator/tuscany/java/sca/distribution/manifest/pom.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/distribution/manifest/pom.xml?rev=651906&r1=651905&r2=651906&view=diff
==============================================================================
--- incubator/tuscany/java/sca/distribution/manifest/pom.xml (original)
+++ incubator/tuscany/java/sca/distribution/manifest/pom.xml Sun Apr 27 02:49:38 2008
@@ -350,11 +350,11 @@
             <artifactId>tuscany-host-jetty</artifactId>
             <version>${pom.version}</version>
         </dependency>
-        <dependency>
+        <!-- dependency>
             <groupId>${pom.groupId}</groupId>
             <artifactId>tuscany-host-tomcat</artifactId>
             <version>${pom.version}</version>
-        </dependency>
+        </dependency -->
         <dependency>
             <groupId>${pom.groupId}</groupId>
             <artifactId>tuscany-interface</artifactId>
@@ -430,6 +430,12 @@
             <groupId>${pom.groupId}</groupId>
             <artifactId>tuscany-implementation-node-runtime</artifactId>
             <version>${pom.version}</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>${pom.groupId}</groupId>
+                    <artifactId>tuscany-host-tomcat</artifactId>
+                </exclusion>
+            </exclusions>
         </dependency>
         <dependency>
             <groupId>${pom.groupId}</groupId>
@@ -525,6 +531,12 @@
             <groupId>${pom.groupId}</groupId>
             <artifactId>tuscany-domain-manager</artifactId>
             <version>${pom.version}</version>
+            <exclusions>
+                <exclusion>
+                    <groupId>${pom.groupId}</groupId>
+                    <artifactId>tuscany-host-tomcat</artifactId>
+                </exclusion>
+            </exclusions>
         </dependency>
         <dependency>
             <groupId>${pom.groupId}</groupId>

Modified: incubator/tuscany/java/sca/distribution/pom.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/distribution/pom.xml?rev=651906&r1=651905&r2=651906&view=diff
==============================================================================
--- incubator/tuscany/java/sca/distribution/pom.xml (original)
+++ incubator/tuscany/java/sca/distribution/pom.xml Sun Apr 27 02:49:38 2008
@@ -88,11 +88,11 @@
         <!--don't put two servlet hosts in the classpath TUSCANY-1954 -->
         <!--include tomcat here so it is shipped in modules/ but not  -->
         <!--in the all jar                                            -->
-        <dependency> 
+        <!-- dependency> 
             <groupId>${pom.groupId}</groupId>
             <artifactId>tuscany-host-tomcat</artifactId>
             <version>2.0-incubating-SNAPSHOT</version>
-        </dependency>
+        </dependency -->
         <dependency>
             <groupId>org.apache.tuscany.sdo</groupId>
             <artifactId>tuscany-sdo-impl</artifactId>

Modified: incubator/tuscany/java/sca/modules/host-jetty/src/main/java/org/apache/tuscany/sca/http/jetty/module/JettyRuntimeModuleActivator.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/host-jetty/src/main/java/org/apache/tuscany/sca/http/jetty/module/JettyRuntimeModuleActivator.java?rev=651906&r1=651905&r2=651906&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/host-jetty/src/main/java/org/apache/tuscany/sca/http/jetty/module/JettyRuntimeModuleActivator.java (original)
+++ incubator/tuscany/java/sca/modules/host-jetty/src/main/java/org/apache/tuscany/sca/http/jetty/module/JettyRuntimeModuleActivator.java Sun Apr 27 02:49:38 2008
@@ -40,21 +40,26 @@
         // Register a Jetty Servlet host
         ServletHostExtensionPoint servletHosts =
             extensionPointRegistry.getExtensionPoint(ServletHostExtensionPoint.class);
-        final WorkScheduler workScheduler = extensionPointRegistry.getExtensionPoint(WorkScheduler.class);
-        // Allow privileged access to start MBeans. Requires MBeanPermission in security policy.
-        server = AccessController.doPrivileged(new PrivilegedAction<JettyServer>() {
-            public JettyServer run() {
-                return new JettyServer(workScheduler);
-             }
-        });        
-        servletHosts.addServletHost(server);
+        
+        if (servletHosts.getServletHosts().size() < 1) {
+            final WorkScheduler workScheduler = extensionPointRegistry.getExtensionPoint(WorkScheduler.class);
+            // Allow privileged access to start MBeans. Requires MBeanPermission in security policy.
+            server = AccessController.doPrivileged(new PrivilegedAction<JettyServer>() {
+                public JettyServer run() {
+                    return new JettyServer(workScheduler);
+                 }
+            });        
+            servletHosts.addServletHost(server);
+        }
     }
 
     public void stop(ExtensionPointRegistry registry) {
         // Allow privileged access to stop MBeans. Requires MBeanPermission in security policy.
         AccessController.doPrivileged(new PrivilegedAction<Object>() {
             public Object run() {
-                server.stop();
+                if (server != null) {
+                    server.stop();
+                }
                 return null;
             }
         });            

Modified: incubator/tuscany/java/sca/modules/host-tomcat/src/main/java/org/apache/tuscany/sca/http/tomcat/module/TomcatRuntimeModuleActivator.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/host-tomcat/src/main/java/org/apache/tuscany/sca/http/tomcat/module/TomcatRuntimeModuleActivator.java?rev=651906&r1=651905&r2=651906&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/host-tomcat/src/main/java/org/apache/tuscany/sca/http/tomcat/module/TomcatRuntimeModuleActivator.java (original)
+++ incubator/tuscany/java/sca/modules/host-tomcat/src/main/java/org/apache/tuscany/sca/http/tomcat/module/TomcatRuntimeModuleActivator.java Sun Apr 27 02:49:38 2008
@@ -40,21 +40,26 @@
         // Register a Tomcat Servlet host
         ServletHostExtensionPoint servletHosts =
             extensionPointRegistry.getExtensionPoint(ServletHostExtensionPoint.class);
-        final WorkScheduler workScheduler = extensionPointRegistry.getExtensionPoint(WorkScheduler.class);
-        // Allow privileged access to start MBeans. Requires MBeanPermission in security policy.
-        server = AccessController.doPrivileged(new PrivilegedAction<TomcatServer>() {
-            public TomcatServer run() {
-                return new TomcatServer(workScheduler);
-             }
-        });        
-        servletHosts.addServletHost(server);
+        
+        if (servletHosts.getServletHosts().size() < 1) {
+            final WorkScheduler workScheduler = extensionPointRegistry.getExtensionPoint(WorkScheduler.class);
+            // Allow privileged access to start MBeans. Requires MBeanPermission in security policy.
+            server = AccessController.doPrivileged(new PrivilegedAction<TomcatServer>() {
+                public TomcatServer run() {
+                    return new TomcatServer(workScheduler);
+                 }
+            });        
+            servletHosts.addServletHost(server);
+        }
     }
 
     public void stop(ExtensionPointRegistry registry) {
         // Allow privileged access to stop MBeans. Requires MBeanPermission in security policy.
         AccessController.doPrivileged(new PrivilegedAction<Object>() {
             public Object run() {
-                server.stop();
+                if (server != null) {
+                    server.stop();
+                }
                 return null;
             }
         });            

Modified: incubator/tuscany/java/sca/modules/host-webapp/src/main/java/org/apache/tuscany/sca/host/webapp/WebAppModuleActivator.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/host-webapp/src/main/java/org/apache/tuscany/sca/host/webapp/WebAppModuleActivator.java?rev=651906&r1=651905&r2=651906&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/host-webapp/src/main/java/org/apache/tuscany/sca/host/webapp/WebAppModuleActivator.java (original)
+++ incubator/tuscany/java/sca/modules/host-webapp/src/main/java/org/apache/tuscany/sca/host/webapp/WebAppModuleActivator.java Sun Apr 27 02:49:38 2008
@@ -19,8 +19,11 @@
 
 package org.apache.tuscany.sca.host.webapp;
 
+import java.util.List;
+
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
 import org.apache.tuscany.sca.core.ModuleActivator;
+import org.apache.tuscany.sca.host.http.ServletHost;
 import org.apache.tuscany.sca.host.http.ServletHostExtensionPoint;
 
 /**
@@ -32,11 +35,30 @@
 
         ServletHostExtensionPoint servletHosts =
             extensionPointRegistry.getExtensionPoint(ServletHostExtensionPoint.class);
-
-        servletHosts.addServletHost(WebAppServletHost.getInstance());
+        
+        List<ServletHost> hosts = servletHosts.getServletHosts();
+        if (isRunningInWebapp()) {
+            if (hosts.size() > 0) {
+                hosts.removeAll(hosts);
+            }
+            servletHosts.addServletHost(WebAppServletHost.getInstance());
+        }
     }
 
     public void stop(ExtensionPointRegistry registry) {
+    }
+
+    /**
+     * TODO: this seems a bit of a hacky way to find if its running in a webapp
+     *       is there a better way?
+     */
+    private boolean isRunningInWebapp() {
+        for (StackTraceElement ste : new Exception().getStackTrace()) {
+            if (ste.getClassName().equals(WebSCADomain.class.getName())) {
+                return true;
+            }
+        }
+        return false;
     }
 
 }