You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by ant elder <an...@apache.org> on 2008/04/27 11:55:25 UTC

Re: 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/ht

This change removes the tomcat host from the sca all jar, is that ok? We did
remove that before at one point and only include the jetty host but it seems
like now we have both again, or did it only ever get done in a release
branch and not synced to trunk? This also changes the hosts so that the
webapp host will remove any other hosts if it can detect its running in a
webapp, thats so its simple to use the lib directory in the bin distribution
for both standalone and in a webapp without having to do any messing about
adding/removing jars.

   ...ant

On Sun, Apr 27, 2008 at 10:49 AM, <an...@apache.org> wrote:

> 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;
>     }
>
>  }
>
>
>