summaryrefslogtreecommitdiffstats
path: root/branches/java-post-M1/sca/tomcat/src
diff options
context:
space:
mode:
Diffstat (limited to 'branches/java-post-M1/sca/tomcat/src')
-rw-r--r--branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/ContainerLoader.java100
-rw-r--r--branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TomcatHost.java53
-rw-r--r--branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyContextListener.java163
-rw-r--r--branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyHost.java185
-rw-r--r--branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyValve.java130
-rw-r--r--branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyWrapper.java43
-rw-r--r--branches/java-post-M1/sca/tomcat/src/main/resources/META-INF/LICENSE.txt1277
-rw-r--r--branches/java-post-M1/sca/tomcat/src/main/resources/META-INF/NOTICE18
-rw-r--r--branches/java-post-M1/sca/tomcat/src/main/resources/META-INF/README.txt35
-rw-r--r--branches/java-post-M1/sca/tomcat/src/main/resources/org/apache/tuscany/tomcat/LocalStrings.properties25
-rw-r--r--branches/java-post-M1/sca/tomcat/src/main/resources/org/apache/tuscany/tomcat/Messages.properties39
-rw-r--r--branches/java-post-M1/sca/tomcat/src/main/resources/system.fragment31
-rw-r--r--branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/AbstractTomcatTest.java298
-rw-r--r--branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/HelloWorldImpl.java29
-rw-r--r--branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/HelloWorldService.java24
-rw-r--r--branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/TestClassLoader.java51
-rw-r--r--branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/TestServlet.java60
-rw-r--r--branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/TomcatIntegrationTestCase.java200
-rw-r--r--branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/TomcatStandaloneTestCase.java79
-rw-r--r--branches/java-post-M1/sca/tomcat/src/test/resources/app1/WEB-INF/axis2.xml183
-rw-r--r--branches/java-post-M1/sca/tomcat/src/test/resources/app1/WEB-INF/classes/sca.module33
-rw-r--r--branches/java-post-M1/sca/tomcat/src/test/resources/app1/WEB-INF/classes/wsdl/helloworld.wsdl97
-rw-r--r--branches/java-post-M1/sca/tomcat/src/test/resources/app1/WEB-INF/web.xml21
-rw-r--r--branches/java-post-M1/sca/tomcat/src/test/resources/app1/index.html18
-rw-r--r--branches/java-post-M1/sca/tomcat/src/test/resources/app2/WEB-INF/classes/sca.module33
-rw-r--r--branches/java-post-M1/sca/tomcat/src/test/resources/app2/WEB-INF/classes/wsdl/helloworld.wsdl97
-rw-r--r--branches/java-post-M1/sca/tomcat/src/test/resources/app2/WEB-INF/web.xml45
-rw-r--r--branches/java-post-M1/sca/tomcat/src/test/resources/app2/index.html3
28 files changed, 0 insertions, 3370 deletions
diff --git a/branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/ContainerLoader.java b/branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/ContainerLoader.java
deleted file mode 100644
index 60c9a7961f..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/ContainerLoader.java
+++ /dev/null
@@ -1,100 +0,0 @@
-/**
- *
- * Copyright 2005 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.tuscany.tomcat;
-
-import java.beans.PropertyChangeListener;
-
-import org.apache.catalina.Container;
-import org.apache.catalina.Loader;
-
-/**
- * Implementation of a TomcatLoader that allows privileged servlets from the container
- * classloader to be loaded into an unprivileged application. This allows the Tuscany
- * integration code to add servlets to the application, for example, to handle web
- * services requests.
- *
- * @version $Rev$ $Date$
- */
-public class ContainerLoader implements Loader {
- private static final String INFO = ContainerLoader.class.getName() + "/SNAPSHOT";
- private final ClassLoader cl;
- private Container container;
-
- /**
- * Constructor specifying the classloader to be used.
- *
- * @param cl the classloader this Loader wraps, typically the container classloader
- */
- public ContainerLoader(ClassLoader cl) {
- this.cl = cl;
- }
-
- public void backgroundProcess() {
- }
-
- public ClassLoader getClassLoader() {
- return cl;
- }
-
- public Container getContainer() {
- return container;
- }
-
- public void setContainer(Container container) {
- this.container = container;
- }
-
- public boolean getDelegate() {
- return false;
- }
-
- public void setDelegate(boolean delegate) {
- throw new UnsupportedOperationException();
- }
-
- public String getInfo() {
- return INFO;
- }
-
- public boolean getReloadable() {
- return false;
- }
-
- public void setReloadable(boolean reloadable) {
- throw new UnsupportedOperationException();
- }
-
- public void addPropertyChangeListener(PropertyChangeListener listener) {
- throw new UnsupportedOperationException();
- }
-
- public void addRepository(String repository) {
- throw new UnsupportedOperationException();
- }
-
- public String[] findRepositories() {
- throw new UnsupportedOperationException();
- }
-
- public boolean modified() {
- throw new UnsupportedOperationException();
- }
-
- public void removePropertyChangeListener(PropertyChangeListener listener) {
- throw new UnsupportedOperationException();
- }
-}
diff --git a/branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TomcatHost.java b/branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TomcatHost.java
deleted file mode 100644
index 8351da8edd..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TomcatHost.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/**
- *
- * Copyright 2006 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.tuscany.tomcat;
-
-import javax.servlet.Servlet;
-
-import org.osoa.sca.annotations.Scope;
-
-import org.apache.tuscany.core.webapp.ServletHost;
-
-/**
- * SCA Component that acts as a proxy for the Tomcat Host container that created the runtime.
- *
- * @version $Rev$ $Date$
- */
-@Scope("MODULE")
-public class TomcatHost implements ServletHost {
- private TuscanyHost host;
-
- public void setHost(TuscanyHost host) {
- this.host = host;
- }
-
- public TuscanyHost getHost() {
- return host;
- }
-
- public void registerMapping(String mapping, Servlet servlet) {
- host.registerMapping(mapping, servlet);
- }
-
- public void unregisterMapping(String mapping) {
- host.unregisterMapping(mapping);
- }
-
- public Servlet getMapping(String mapping) {
- return host.getMapping(mapping);
- }
-}
diff --git a/branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyContextListener.java b/branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyContextListener.java
deleted file mode 100644
index be1efdc20e..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyContextListener.java
+++ /dev/null
@@ -1,163 +0,0 @@
-/**
- *
- * Copyright 2005 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.tuscany.tomcat;
-
-import javax.servlet.ServletContext;
-
-import org.apache.catalina.Context;
-import org.apache.catalina.Lifecycle;
-import org.apache.catalina.LifecycleEvent;
-import org.apache.catalina.LifecycleListener;
-import org.apache.catalina.util.StringManager;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.apache.tuscany.common.resource.ResourceLoader;
-import org.apache.tuscany.common.resource.impl.ResourceLoaderImpl;
-import org.apache.tuscany.core.client.BootstrapHelper;
-import org.apache.tuscany.core.config.ConfigurationException;
-import org.apache.tuscany.core.config.ConfigurationLoadException;
-import org.apache.tuscany.core.config.ModuleComponentConfigurationLoader;
-import org.apache.tuscany.core.context.CompositeContext;
-import org.apache.tuscany.core.context.EventException;
-import org.apache.tuscany.core.context.event.ModuleStart;
-import org.apache.tuscany.core.context.event.ModuleStop;
-import org.apache.tuscany.core.runtime.RuntimeContext;
-import org.apache.tuscany.model.assembly.AssemblyFactory;
-import org.apache.tuscany.model.assembly.ModuleComponent;
-import org.apache.tuscany.model.assembly.impl.AssemblyContextImpl;
-import org.apache.tuscany.model.assembly.loader.AssemblyModelLoader;
-
-/**
- * @version $Rev$ $Date$
- */
-public class TuscanyContextListener implements LifecycleListener {
- private static final Log log = LogFactory.getLog(TuscanyContextListener.class);
- private static final StringManager sm = StringManager.getManager("org.apache.tuscany.tomcat");
- private static final String TUSCANY_RUNTIME_NAME = RuntimeContext.class.getName();
- public static final String MODULE_COMPONENT_NAME = "org.apache.tuscany.core.webapp.ModuleComponentContext";
-
- private final AssemblyFactory modelFactory;
- private final AssemblyModelLoader modelLoader;
- private final RuntimeContext runtime;
- private CompositeContext moduleContext;
- private TuscanyValve valve;
-
- public TuscanyContextListener(RuntimeContext runtimeContext, AssemblyFactory modelFactory, AssemblyModelLoader modelLoader) {
- this.runtime = runtimeContext;
- this.modelFactory = modelFactory;
- this.modelLoader = modelLoader;
- }
-
- public void lifecycleEvent(LifecycleEvent event) {
- String type = event.getType();
- if (Lifecycle.AFTER_START_EVENT.equals(type)) {
- startContext((Context) event.getLifecycle());
- } else if (Lifecycle.STOP_EVENT.equals(type)) {
- stopContext((Context) event.getLifecycle());
- }
- }
-
- private void startContext(Context ctx) {
- ClassLoader appLoader = ctx.getLoader().getClassLoader();
- if (appLoader.getResource("sca.module") == null && (appLoader.getResource("webapp.composite") == null)) {
- return;
- }
-
- log.info(sm.getString("context.configLoad", ctx.getName()));
- try {
- loadContext(ctx);
- } catch (ConfigurationException e) {
- log.error(sm.getString("context.configError"), e);
- // todo mark application as unavailable
- return;
- }
-
- try {
- moduleContext.publish(new ModuleStart(this));
- } catch (EventException e) {
- log.error(sm.getString("context.moduleStartError"), e);
- // todo unload module component from runtime
- // todo mark application as unavailable
- return;
- } catch (RuntimeException e) {
- log.error(sm.getString("context.unknownRuntimeException"), e);
- // todo unload module component from runtime
- throw e;
- }
-
- // add a valve to this context's pipeline that will associate the request with the runtime
- if (valve == null) {
- valve = new TuscanyValve(moduleContext);
- } else {
- valve.setContext(moduleContext);
- valve.setEnabled(true);
- }
- ctx.getPipeline().addValve(valve);
- // add the RuntimeContext in as a servlet context parameter
- ServletContext servletContext = ctx.getServletContext();
- servletContext.setAttribute(TUSCANY_RUNTIME_NAME, runtime);
- servletContext.setAttribute(MODULE_COMPONENT_NAME, moduleContext);
- }
-
- private void loadContext(Context ctx) throws ConfigurationException {
- ResourceLoader resourceLoader = new ResourceLoaderImpl(ctx.getLoader().getClassLoader());
- ClassLoader oldCl = Thread.currentThread().getContextClassLoader();
- Thread.currentThread().setContextClassLoader(getClass().getClassLoader());
- try {
- AssemblyContextImpl modelContext = new AssemblyContextImpl(modelFactory, modelLoader, resourceLoader, ctx.getName());
-
- ModuleComponentConfigurationLoader loader = BootstrapHelper.getConfigurationLoader(runtime.getSystemContext(), modelContext);
-
- // Load the SCDL configuration of the application module
- ModuleComponent moduleComponent;
- try {
- moduleComponent = loader.loadModuleComponent(ctx.getName(), ctx.getPath());
- } catch (ConfigurationLoadException e) {
-
- //FIXME This is a temporary tweak to allow both 0.9 sca.module file and new composite files
- // to be loaded, if an sca.module file could not be found, look for a webapp.composite
- // In the longer term we'll have to choose a fixed name for the webapp's main composite
- // file, or define a way to configure that name
- moduleComponent = loader.loadModuleComponent(ctx.getName(), "webapp");
- }
-
- // Register it under the root application context
- CompositeContext rootContext = runtime.getRootContext();
- rootContext.registerModelObject(moduleComponent);
- moduleContext = (CompositeContext) rootContext.getContext(moduleComponent.getName());
- //TODO remove the hack below
- moduleContext.setAssemblyContext(modelContext);
- } finally {
- Thread.currentThread().setContextClassLoader(oldCl);
- }
- }
-
- private void stopContext(Context ctx) {
- if (moduleContext != null) {
- moduleContext.publish(new ModuleStop(this));
- }
- CompositeContext rootContext = runtime.getRootContext();
- rootContext.removeContext(moduleContext.getName());
- valve.setEnabled(false);
- //ctx.getPipeline().removeValve(valve);
- //valve = null;
- moduleContext.stop();
- moduleContext = null;
- // todo unload module component from runtime
- }
-
-}
diff --git a/branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyHost.java b/branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyHost.java
deleted file mode 100644
index 37984ef40d..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyHost.java
+++ /dev/null
@@ -1,185 +0,0 @@
-/**
- *
- * Copyright 2005 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.tuscany.tomcat;
-
-import javax.servlet.Servlet;
-
-import org.apache.catalina.Container;
-import org.apache.catalina.Context;
-import org.apache.catalina.LifecycleException;
-import org.apache.catalina.Wrapper;
-import org.apache.catalina.core.StandardContext;
-import org.apache.catalina.core.StandardHost;
-import org.apache.catalina.util.StringManager;
-import org.apache.tomcat.util.buf.MessageBytes;
-import org.apache.tomcat.util.http.mapper.MappingData;
-
-import org.apache.tuscany.common.monitor.impl.NullMonitorFactory;
-import org.apache.tuscany.core.builder.ContextFactoryBuilderRegistry;
-import org.apache.tuscany.core.builder.impl.DefaultWireBuilder;
-import org.apache.tuscany.core.client.BootstrapHelper;
-import org.apache.tuscany.core.config.ConfigurationLoadException;
-import org.apache.tuscany.core.config.ModuleComponentConfigurationLoader;
-import org.apache.tuscany.core.context.CompositeContext;
-import org.apache.tuscany.core.context.SystemCompositeContext;
-import org.apache.tuscany.core.context.event.ModuleStart;
-import org.apache.tuscany.core.context.event.ModuleStop;
-import org.apache.tuscany.core.runtime.RuntimeContext;
-import org.apache.tuscany.core.runtime.RuntimeContextImpl;
-import org.apache.tuscany.core.webapp.ServletHost;
-import org.apache.tuscany.model.assembly.AssemblyContext;
-import org.apache.tuscany.model.assembly.AssemblyFactory;
-import org.apache.tuscany.model.assembly.ModuleComponent;
-import org.apache.tuscany.model.assembly.loader.AssemblyModelLoader;
-
-/**
- * A specialied Tomcat Host that extends the Standardhost implementation and adds SCA capabilities.
- * <p/>
- * As children are added, they are examined for the presence of SCA configuration
- * information and if any is found then the web application is treated as an
- * SCA Module defintion which is used to create a ModuleComponent. The name of the
- * context is used as the name of the ModuleComponent and its context path is used
- * as the URI.
- *
- * @version $Rev$ $Date$
- */
-@SuppressWarnings({"serial"})
-public class TuscanyHost extends StandardHost implements ServletHost {
- private static final String SYSTEM_MODULE_COMPONENT = "org.apache.tuscany.core.system";
-
- private static final StringManager sm = StringManager.getManager("org.apache.tuscany.tomcat");
-
- private RuntimeContext runtime;
- private AssemblyModelLoader modelLoader;
- private AssemblyFactory modelFactory;
-
- public synchronized void start() throws LifecycleException {
- startRuntime();
- super.start();
- }
-
- public synchronized void stop() throws LifecycleException {
- super.stop();
- stopRuntime();
- }
-
- private void startRuntime() {
- // Create an assembly model context
- AssemblyContext modelContext = BootstrapHelper.getModelContext(getClass().getClassLoader());
- modelFactory = modelContext.getAssemblyFactory();
- modelLoader = modelContext.getAssemblyLoader();
-
- // Create and start the runtime
- NullMonitorFactory monitorFactory = new NullMonitorFactory();
- ContextFactoryBuilderRegistry builderRegistry = BootstrapHelper.bootstrapContextFactoryBuilders(monitorFactory);
- runtime = new RuntimeContextImpl(monitorFactory, builderRegistry, new DefaultWireBuilder());
- runtime.start();
-
- // Load and start the system configuration
- try {
- SystemCompositeContext systemContext = runtime.getSystemContext();
- BootstrapHelper.bootstrapStaxLoader(systemContext, modelContext);
- ModuleComponentConfigurationLoader loader = BootstrapHelper.getConfigurationLoader(systemContext, modelContext);
- ModuleComponent systemModuleComponent = loader.loadSystemModuleComponent(SYSTEM_MODULE_COMPONENT, SYSTEM_MODULE_COMPONENT);
- CompositeContext context = BootstrapHelper.registerModule(systemContext, systemModuleComponent);
- context.publish(new ModuleStart(this));
-
- TomcatHost host = systemContext.resolveInstance(TomcatHost.class);
- host.setHost(this);
- } catch (ConfigurationLoadException e) {
- getLogger().warn(sm.getString("runtime.loadSystemFailed", e.getResourceURI()), e);
- return;
- } catch (Exception e) {
- getLogger().warn(sm.getString("runtime.registerSystemFailed"), e);
- runtime.stop();
- runtime = null;
- return;
- }
-
- getLogger().info(sm.getString("runtime.started"));
- }
-
- private void stopRuntime() {
- if (runtime == null) {
- return;
- }
- runtime.getSystemContext().publish(new ModuleStop(this));
-
- runtime.stop();
- runtime = null;
- getLogger().info(sm.getString("runtime.stopped"));
- }
-
- public synchronized void addChild(Container child) {
- if (!(child instanceof StandardContext)) {
- throw new IllegalArgumentException(sm.getString("tuscanyHost.notContext"));
- }
- StandardContext ctx = (StandardContext) child;
- ctx.addLifecycleListener(new TuscanyContextListener(runtime, modelFactory, modelLoader));
- super.addChild(child);
- }
-
- public String toString() {
- StringBuilder sb = new StringBuilder(132);
- if (getParent() != null) {
- sb.append(getParent().toString()).append('.');
- }
- sb.append("TuscanyHost[").append(getName()).append(']');
- return (sb.toString());
- }
-
- public void registerMapping(String mapping, Servlet servlet) {
- Context ctx = map(mapping);
- if (ctx == null) {
- throw new UnsupportedOperationException("Cannot find context for mapping " + mapping);
- }
- String contextPath = ctx.getPath();
- assert mapping.startsWith(contextPath);
- mapping = mapping.substring(contextPath.length());
- Wrapper wrapper = new TuscanyWrapper(servlet);
- wrapper.setName(mapping.substring(0,mapping.lastIndexOf('/')));
- ctx.addChild(wrapper);
- wrapper.addMapping(mapping);
- ctx.getMapper().addWrapper(mapping, wrapper, false);
- }
-
- public void unregisterMapping(String mapping) {
- }
-
- public Servlet getMapping(String mapping) {
- Context ctx = map(mapping);
- if (ctx == null) {
- return null;
- }
- String contextPath = ctx.getPath();
- assert mapping.startsWith(contextPath);
-
- MappingData mappingData = new MappingData();
- MessageBytes mb = MessageBytes.newInstance();
- mb.setString(mapping);
- try {
- ctx.getMapper().map(mb, mappingData);
- } catch (Exception e) {
- return null;
- }
- if (!(mappingData.wrapper instanceof TuscanyWrapper)) {
- return null;
- }
- TuscanyWrapper wrapper = (TuscanyWrapper) mappingData.wrapper;
- return wrapper.getServlet();
- }
-}
diff --git a/branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyValve.java b/branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyValve.java
deleted file mode 100644
index 352a04bde0..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyValve.java
+++ /dev/null
@@ -1,130 +0,0 @@
-/**
- *
- * Copyright 2005 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.tuscany.tomcat;
-
-import java.io.IOException;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpSession;
-
-import org.apache.catalina.connector.Request;
-import org.apache.catalina.connector.Response;
-import org.apache.catalina.valves.ValveBase;
-import org.osoa.sca.CurrentModuleContext;
-import org.osoa.sca.ModuleContext;
-import org.osoa.sca.SCA;
-
-import org.apache.tuscany.core.context.CompositeContext;
-import org.apache.tuscany.core.context.event.HttpSessionBound;
-import org.apache.tuscany.core.context.event.RequestStart;
-import org.apache.tuscany.core.context.event.RequestEnd;
-import org.apache.tuscany.core.webapp.LazyHTTPSessionId;
-
-/**
- * Valve that can be added to a pipeline to automatically set the SCA environment as each request is processed.
- *
- * @version $Rev$ $Date$
- */
-public class TuscanyValve extends ValveBase {
- /**
- * Name of the note that contains the request id
- */
- private static final String REQUEST_ID = "org.apache.tuscany.tomcat.REQUEST_ID";
-
- private static final ContextBinder BINDER = new ContextBinder();
-
- private CompositeContext moduleComponentContext;
-
- private boolean enabled = true;
-
- public void setEnabled(boolean enabled) {
- this.enabled = enabled;
- }
-
- public void setContext(CompositeContext moduleComponentContext) {
- this.moduleComponentContext = moduleComponentContext;
- }
-
- public TuscanyValve(CompositeContext moduleComponentContext) {
- this.moduleComponentContext = moduleComponentContext;
- }
-
- public void invoke(Request request, Response response) throws IOException, ServletException {
- if (!enabled){
- return;
- }
- Object oldRequestId = request.getNote(REQUEST_ID);
- ModuleContext oldContext = CurrentModuleContext.getContext();
- // bind the current module context to the thread for use by CurrentModuleContext
- BINDER.setContext((ModuleContext) moduleComponentContext);
- try {
- if (oldRequestId != null) {
- // the request has already been started, just invoke the next valve
- next.invoke(request, response);
- } else {
- // tell the runtime a new request is starting
- Object requestId = new Object();
-
- HttpSession session = request.getSession(false);
- if (session != null) {
- // A session is already active
- moduleComponentContext .publish(new HttpSessionBound(this,session));
- } else {
- // Create a lazy wrapper since a session is not yet active
- moduleComponentContext.publish(new HttpSessionBound(this, new LazyHTTPSessionId(request)));
- }
-
- try {
- moduleComponentContext.publish(new RequestStart(this, requestId));
- } catch (Exception e) {
- throw new ServletException(e.getMessage(), e);
- }
- request.setNote(REQUEST_ID, requestId);
-
- try {
- // invoke the next valve in the pipeline
- next.invoke(request, response);
- } finally {
- // notify the runtime the request is ending
- request.removeNote(REQUEST_ID);
- try {
- moduleComponentContext.publish(new RequestEnd(this, requestId));
- } catch (Exception e) {
- // the application already did its work, log and ignore
- // todo log this exception
- }
- }
- }
- } finally {
- // restore the previous module context onto the thread
- BINDER.setContext(oldContext);
- }
- }
-
- private static class ContextBinder extends SCA {
- public void setContext(ModuleContext context) {
- setModuleContext(context);
- }
-
- public void start() {
- throw new AssertionError();
- }
-
- public void stop() {
- throw new AssertionError();
- }
- }
-}
diff --git a/branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyWrapper.java b/branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyWrapper.java
deleted file mode 100644
index de53ad4d45..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/main/java/org/apache/tuscany/tomcat/TuscanyWrapper.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/**
- *
- * Copyright 2006 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.tuscany.tomcat;
-
-import javax.servlet.Servlet;
-
-import org.apache.catalina.core.StandardWrapper;
-
-/**
- * @version $Rev$ $Date$
- */
-public class TuscanyWrapper extends StandardWrapper {
- private static final long serialVersionUID = 1L;
-
- private final Servlet servlet;
-
- public TuscanyWrapper(Servlet servlet) {
- super();
- this.servlet = servlet;
- }
-
- public synchronized Servlet loadServlet() {
- return servlet;
- }
-
- public Servlet getServlet() {
- return servlet;
- }
-}
diff --git a/branches/java-post-M1/sca/tomcat/src/main/resources/META-INF/LICENSE.txt b/branches/java-post-M1/sca/tomcat/src/main/resources/META-INF/LICENSE.txt
deleted file mode 100644
index 25d78feeac..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/main/resources/META-INF/LICENSE.txt
+++ /dev/null
@@ -1,1277 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-
-APACHE TUSCANY SUBCOMPONENTS:
-
-The Apache Tuscany distribution includes a number of subcomponents with
-separate copyright notices and license terms. Your use of the source
-code for the these subcomponents is subject to the terms and
-conditions of the following licenses.
-
-===============================================================================
-
-For the Eclipse Modeling Framework component and the Celtix binding:
-
-Eclipse Public License - v 1.0
-
-THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE
-PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF
-THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
-
-1. DEFINITIONS
-
-"Contribution" means:
-
-a) in the case of the initial Contributor, the initial code and
-documentation distributed under this Agreement, and
-b) in the case of each subsequent Contributor:
-
-i) changes to the Program, and
-
-ii) additions to the Program;
-
-where such changes and/or additions to the Program originate from and
-are distributed by that particular Contributor. A Contribution
-'originates' from a Contributor if it was added to the Program by such
-Contributor itself or anyone acting on such Contributor's behalf.
-Contributions do not include additions to the Program which: (i) are
-separate modules of software distributed in conjunction with the
-Program under their own license agreement, and (ii) are not derivative
-works of the Program.
-
-"Contributor" means any person or entity that distributes the Program.
-
-"Licensed Patents " mean patent claims licensable by a Contributor
-which are necessarily infringed by the use or sale of its Contribution
-alone or when combined with the Program.
-
-"Program" means the Contributions distributed in accordance with this
-Agreement.
-
-"Recipient" means anyone who receives the Program under this
-Agreement, including all Contributors.
-
-2. GRANT OF RIGHTS
-
-a) Subject to the terms of this Agreement, each Contributor hereby
-grants Recipient a non-exclusive, worldwide, royalty-free copyright
-license to reproduce, prepare derivative works of, publicly display,
-publicly perform, distribute and sublicense the Contribution of such
-Contributor, if any, and such derivative works, in source code and
-object code form.
-
-b) Subject to the terms of this Agreement, each Contributor hereby
-grants Recipient a non-exclusive, worldwide, royalty-free patent
-license under Licensed Patents to make, use, sell, offer to sell,
-import and otherwise transfer the Contribution of such Contributor, if
-any, in source code and object code form. This patent license shall
-apply to the combination of the Contribution and the Program if, at
-the time the Contribution is added by the Contributor, such addition
-of the Contribution causes such combination to be covered by the
-Licensed Patents. The patent license shall not apply to any other
-combinations which include the Contribution. No hardware per se is
-licensed hereunder.
-
-c) Recipient understands that although each Contributor grants the
-licenses to its Contributions set forth herein, no assurances are
-provided by any Contributor that the Program does not infringe the
-patent or other intellectual property rights of any other entity. Each
-Contributor disclaims any liability to Recipient for claims brought by
-any other entity based on infringement of intellectual property rights
-or otherwise. As a condition to exercising the rights and licenses
-granted hereunder, each Recipient hereby assumes sole responsibility
-to secure any other intellectual property rights needed, if any. For
-example, if a third party patent license is required to allow
-Recipient to distribute the Program, it is Recipient's responsibility
-to acquire that license before distributing the Program.
-
-d) Each Contributor represents that to its knowledge it has sufficient
-copyright rights in its Contribution, if any, to grant the copyright
-license set forth in this Agreement.
-
-3. REQUIREMENTS
-
-A Contributor may choose to distribute the Program in object code form
-under its own license agreement, provided that:
-
-a) it complies with the terms and conditions of this Agreement; and
-
-b) its license agreement:
-
-i) effectively disclaims on behalf of all Contributors all warranties
-and conditions, express and implied, including warranties or
-conditions of title and non-infringement, and implied warranties or
-conditions of merchantability and fitness for a particular purpose;
-
-ii) effectively excludes on behalf of all Contributors all liability
-for damages, including direct, indirect, special, incidental and
-consequential damages, such as lost profits;
-
-iii) states that any provisions which differ from this Agreement are
-offered by that Contributor alone and not by any other party; and
-
-iv) states that source code for the Program is available from such
-Contributor, and informs licensees how to obtain it in a reasonable
-manner on or through a medium customarily used for software exchange.
-
-When the Program is made available in source code form:
-
-a) it must be made available under this Agreement; and
-
-b) a copy of this Agreement must be included with each copy of the
-Program.
-
-Contributors may not remove or alter any copyright notices contained
-within the Program.
-
-Each Contributor must identify itself as the originator of its
-Contribution, if any, in a manner that reasonably allows subsequent
-Recipients to identify the originator of the Contribution.
-
-4. COMMERCIAL DISTRIBUTION
-
-Commercial distributors of software may accept certain
-responsibilities with respect to end users, business partners and the
-like. While this license is intended to facilitate the commercial use
-of the Program, the Contributor who includes the Program in a
-commercial product offering should do so in a manner which does not
-create potential liability for other Contributors. Therefore, if a
-Contributor includes the Program in a commercial product offering,
-such Contributor ("Commercial Contributor") hereby agrees to defend
-and indemnify every other Contributor ("Indemnified Contributor")
-against any losses, damages and costs (collectively "Losses") arising
-from claims, lawsuits and other legal actions brought by a third party
-against the Indemnified Contributor to the extent caused by the acts
-or omissions of such Commercial Contributor in connection with its
-distribution of the Program in a commercial product offering. The
-obligations in this section do not apply to any claims or Losses
-relating to any actual or alleged intellectual property infringement.
-In order to qualify, an Indemnified Contributor must: a) promptly
-notify the Commercial Contributor in writing of such claim, and b)
-allow the Commercial Contributor to control, and cooperate with the
-Commercial Contributor in, the defense and any related settlement
-negotiations. The Indemnified Contributor may participate in any such
-claim at its own expense.
-
-For example, a Contributor might include the Program in a commercial
-product offering, Product X. That Contributor is then a Commercial
-Contributor. If that Commercial Contributor then makes performance
-claims, or offers warranties related to Product X, those performance
-claims and warranties are such Commercial Contributor's responsibility
-alone. Under this section, the Commercial Contributor would have to
-defend claims against the other Contributors related to those
-performance claims and warranties, and if a court requires any other
-Contributor to pay any damages as a result, the Commercial Contributor
-must pay those damages.
-
-5. NO WARRANTY
-
-EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS
-PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY
-WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY
-OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
-responsible for determining the appropriateness of using and
-distributing the Program and assumes all risks associated with its
-exercise of rights under this Agreement , including but not limited to
-the risks and costs of program errors, compliance with applicable
-laws, damage to or loss of data, programs or equipment, and
-unavailability or interruption of operations.
-
-6. DISCLAIMER OF LIABILITY
-
-EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR
-ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT,
-INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
-WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF
-LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR
-DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
-HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
-
-7. GENERAL
-
-If any provision of this Agreement is invalid or unenforceable under
-applicable law, it shall not affect the validity or enforceability of
-the remainder of the terms of this Agreement, and without further
-action by the parties hereto, such provision shall be reformed to the
-minimum extent necessary to make such provision valid and enforceable.
-
-If Recipient institutes patent litigation against any entity
-(including a cross-claim or counterclaim in a lawsuit) alleging that
-the Program itself (excluding combinations of the Program with other
-software or hardware) infringes such Recipient's patent(s), then such
-Recipient's rights granted under Section 2(b) shall terminate as of
-the date such litigation is filed.
-
-All Recipient's rights under this Agreement shall terminate if it
-fails to comply with any of the material terms or conditions of this
-Agreement and does not cure such failure in a reasonable period of
-time after becoming aware of such noncompliance. If all Recipient's
-rights under this Agreement terminate, Recipient agrees to cease use
-and distribution of the Program as soon as reasonably practicable.
-However, Recipient's obligations under this Agreement and any licenses
-granted by Recipient relating to the Program shall continue and
-survive.
-
-Everyone is permitted to copy and distribute copies of this Agreement,
-but in order to avoid inconsistency the Agreement is copyrighted and
-may only be modified in the following manner. The Agreement Steward
-reserves the right to publish new versions (including revisions) of
-this Agreement from time to time. No one other than the Agreement
-Steward has the right to modify this Agreement. The Eclipse Foundation
-is the initial Agreement Steward. The Eclipse Foundation may assign
-the responsibility to serve as the Agreement Steward to a suitable
-separate entity. Each new version of the Agreement will be given a
-distinguishing version number. The Program (including Contributions)
-may always be distributed subject to the version of the Agreement
-under which it was received. In addition, after a new version of the
-Agreement is published, Contributor may elect to distribute the
-Program (including its Contributions) under the new version. Except as
-expressly stated in Sections 2(a) and 2(b) above, Recipient receives
-no rights or licenses to the intellectual property of any Contributor
-under this Agreement, whether expressly, by implication, estoppel or
-otherwise. All rights in the Program not expressly granted under this
-Agreement are reserved.
-
-This Agreement is governed by the laws of the State of New York and
-the intellectual property laws of the United States of America. No
-party to this Agreement will bring a legal action under this Agreement
-more than one year after the cause of action arose. Each party waives
-its rights to a jury trial in any resulting litigation.
-
-===============================================================================
-
-For the Rhino JavaScript container component:
-
-Mozilla Public License 1.1 (MPL 1.1)
-
-1. Definitions.
-
- 1.0.1. "Commercial Use" means distribution or otherwise making the
-Covered Code available to a third party.
-
- 1.1. "Contributor" means each entity that creates or contributes to
-the creation of Modifications.
-
- 1.2. "Contributor Version" means the combination of the Original Code,
-prior Modifications used by a Contributor, and the Modifications made by that
-particular Contributor.
-
- 1.3. "Covered Code" means the Original Code or Modifications or the
-combination of the Original Code and Modifications, in each case including
-portions thereof.
-
- 1.4. "Electronic Distribution Mechanism" means a mechanism generally
-accepted in the software development community for the electronic transfer of
-data.
-
- 1.5. "Executable" means Covered Code in any form other than Source
-Code.
-
- 1.6. "Initial Developer" means the individual or entity identified as
-the Initial Developer in the Source Code notice required by Exhibit A.
-
- 1.7. "Larger Work" means a work which combines Covered Code or
-portions thereof with code not governed by the terms of this License.
-
- 1.8. "License" means this document.
-
- 1.8.1. "Licensable" means having the right to grant, to the maximum
-extent possible, whether at the time of the initial grant or subsequently
-acquired, any and all of the rights conveyed herein.
-
- 1.9. "Modifications" means any addition to or deletion from the
-substance or structure of either the Original Code or any previous
-Modifications. When Covered Code is released as a series of files, a
-Modification is:
- A. Any addition to or deletion from the contents of a file
-containing Original Code or previous Modifications.
-
- B. Any new file that contains any part of the Original Code or
-previous Modifications.
-
- 1.10. "Original Code" means Source Code of computer software code
-which is described in the Source Code notice required by Exhibit A as Original
-Code, and which, at the time of its release under this License is not already
-Covered Code governed by this License.
-
- 1.10.1. "Patent Claims" means any patent claim(s), now owned or
-hereafter acquired, including without limitation, method, process, and
-apparatus claims, in any patent Licensable by grantor.
-
- 1.11. "Source Code" means the preferred form of the Covered Code for
-making modifications to it, including all modules it contains, plus any
-associated interface definition files, scripts used to control compilation and
-installation of an Executable, or source code differential comparisons against
-either the Original Code or another well known, available Covered Code of the
-Contributor's choice. The Source Code can be in a compressed or archival form,
-provided the appropriate decompression or de-archiving software is widely
-available for no charge.
-
- 1.12. "You" (or "Your") means an individual or a legal entity
-exercising rights under, and complying with all of the terms of, this License
-or a future version of this License issued under Section 6.1. For legal
-entities, "You" includes any entity which controls, is controlled by, or is
-under common control with You. For purposes of this definition, "control"
-means (a) the power, direct or indirect, to cause the direction or management
-of such entity, whether by contract or otherwise, or (b) ownership of more
-than fifty percent (50%) of the outstanding shares or beneficial ownership of
-such entity.
-
-2. Source Code License.
-
- 2.1. The Initial Developer Grant.
- The Initial Developer hereby grants You a world-wide, royalty-free,
-non-exclusive license, subject to third party intellectual property claims:
- (a) under intellectual property rights (other than patent or
-trademark) Licensable by Initial Developer to use, reproduce, modify, display,
-perform, sublicense and distribute the Original Code (or portions thereof)
-with or without Modifications, and/or as part of a Larger Work; and
-
- (b) under Patents Claims infringed by the making, using or selling
-of Original Code, to make, have made, use, practice, sell, and offer for sale,
-and/or otherwise dispose of the Original Code (or portions thereof).
- (c) the licenses granted in this Section 2.1(a) and
-(b) are effective on the date Initial Developer first distributes Original
-Code under the terms of this License.
-
- (d) Notwithstanding Section 2.1(b) above, no patent license is
-granted: 1) for code that You delete from the Original Code; 2) separate from
-the Original Code; or 3) for infringements caused by: i) the modification of
-the Original Code or ii) the combination of the Original Code with other
-software or devices.
-
- 2.2. Contributor Grant.
- Subject to third party intellectual property claims, each Contributor
-hereby grants You a world-wide, royalty-free, non-exclusive license
-
- (a) under intellectual property rights (other than patent or
-trademark) Licensable by Contributor, to use, reproduce, modify, display,
-perform, sublicense and distribute the Modifications created by such
-Contributor (or portions thereof) either on an unmodified basis, with other
-Modifications, as Covered Code and/or as part of a Larger Work; and
-
- (b) under Patent Claims infringed by the making, using, or selling
-of Modifications made by that Contributor either alone and/or in combination
-with its Contributor Version (or portions of such combination), to make, use,
-sell, offer for sale, have made, and/or otherwise dispose of: 1) Modifications
-made by that Contributor (or portions thereof); and 2) the combination of
-Modifications made by that Contributor with its Contributor Version (or
-portions of such combination).
-
- (c) the licenses granted in Sections 2.2(a) and 2.2(b) are
-effective on the date Contributor first makes Commercial Use of the Covered
-Code.
-
- (d) Notwithstanding Section 2.2(b) above, no patent license is
-granted: 1) for any code that Contributor has deleted from the Contributor
-Version; 2) separate from the Contributor Version; 3) for infringements
-caused by: i) third party modifications of Contributor Version or ii) the
-combination of Modifications made by that Contributor with other software
-(except as part of the Contributor Version) or other devices; or 4) under
-Patent Claims infringed by Covered Code in the absence of Modifications made
-by that Contributor.
-
-
-3. Distribution Obligations.
-
- 3.1. Application of License.
- The Modifications which You create or to which You contribute are
-governed by the terms of this License, including without limitation Section
-2.2. The Source Code version of Covered Code may be distributed only under the
-terms of this License or a future version of this License released under
-Section 6.1, and You must include a copy of this License with every copy of
-the Source Code You distribute. You may not offer or impose any terms on any
-Source Code version that alters or restricts the applicable version of this
-License or the recipients' rights hereunder. However, You may include an
-additional document offering the additional rights described in Section 3.5.
-
- 3.2. Availability of Source Code.
- Any Modification which You create or to which You contribute must be
-made available in Source Code form under the terms of this License either on
-the same media as an Executable version or via an accepted Electronic
-Distribution Mechanism to anyone to whom you made an Executable version
-available; and if made available via Electronic Distribution Mechanism, must
-remain available for at least twelve (12) months after the date it initially
-became available, or at least six (6) months after a subsequent version of
-that particular Modification has been made available to such recipients. You
-are responsible for ensuring that the Source Code version remains available
-even if the Electronic Distribution Mechanism is maintained by a third party.
-
- 3.3. Description of Modifications.
- You must cause all Covered Code to which You contribute to contain a
-file documenting the changes You made to create that Covered Code and the date
-of any change. You must include a prominent statement that the Modification is
-derived, directly or indirectly, from Original Code provided by the Initial
-Developer and including the name of the Initial Developer in (a) the Source
-Code, and (b) in any notice in an Executable version or related documentation
-in which You describe the origin or ownership of the Covered Code.
-
- 3.4. Intellectual Property Matters
- (a) Third Party Claims.
- If Contributor has knowledge that a license under a third party's
-intellectual property rights is required to exercise the rights granted by
-such Contributor under Sections 2.1 or 2.2, Contributor must include a text
-file with the Source Code distribution titled "LEGAL" which describes the
-claim and the party making the claim in sufficient detail that a recipient
-will know whom to contact. If Contributor obtains such knowledge after the
-Modification is made available as described in Section 3.2, Contributor shall
-promptly modify the LEGAL file in all copies Contributor makes available
-thereafter and shall take other steps (such as notifying appropriate mailing
-lists or newsgroups) reasonably calculated to inform those who received the
-Covered Code that new knowledge has been obtained.
-
- (b) Contributor APIs.
- If Contributor's Modifications include an application programming
-interface and Contributor has knowledge of patent licenses which are
-reasonably necessary to implement that API, Contributor must also include this
-information in the LEGAL file.
-
- (c) Representations.
- Contributor represents that, except as disclosed pursuant to
-Section 3.4(a) above, Contributor believes that Contributor's Modifications
-are Contributor's original creation(s) and/or Contributor has sufficient
-rights to grant the rights conveyed by this License.
-
-
- 3.5. Required Notices.
- You must duplicate the notice in Exhibit A in each file of the Source
-Code. If it is not possible to put such notice in a particular Source Code
-file due to its structure, then You must include such notice in a location
-(such as a relevant directory) where a user would be likely to look for such a
-notice. If You created one or more Modification(s) You may add your name as a
-Contributor to the notice described in Exhibit A. You must also duplicate
-this License in any documentation for the Source Code where You describe
-recipients' rights or ownership rights relating to Covered Code. You may
-choose to offer, and to charge a fee for, warranty, support, indemnity or
-liability obligations to one or more recipients of Covered Code. However, You
-may do so only on Your own behalf, and not on behalf of the Initial Developer
-or any Contributor. You must make it absolutely clear than any such warranty,
-support, indemnity or liability obligation is offered by You alone, and You
-hereby agree to indemnify the Initial Developer and every Contributor for any
-liability incurred by the Initial Developer or such Contributor as a result of
-warranty, support, indemnity or liability terms You offer.
-
- 3.6. Distribution of Executable Versions.
- You may distribute Covered Code in Executable form only if the
-requirements of Section 3.1-3.5 have been met for that Covered Code, and if
-You include a notice stating that the Source Code version of the Covered Code
-is available under the terms of this License, including a description of how
-and where You have fulfilled the obligations of Section 3.2. The notice must
-be conspicuously included in any notice in an Executable version, related
-documentation or collateral in which You describe recipients' rights relating
-to the Covered Code. You may distribute the Executable version of Covered Code
-or ownership rights under a license of Your choice, which may contain terms
-different from this License, provided that You are in compliance with the
-terms of this License and that the license for the Executable version does not
-attempt to limit or alter the recipient's rights in the Source Code version
-from the rights set forth in this License. If You distribute the Executable
-version under a different license You must make it absolutely clear that any
-terms which differ from this License are offered by You alone, not by the
-Initial Developer or any Contributor. You hereby agree to indemnify the
-Initial Developer and every Contributor for any liability incurred by the
-Initial Developer or such Contributor as a result of any such terms You offer.
-
- 3.7. Larger Works.
- You may create a Larger Work by combining Covered Code with other code
-not governed by the terms of this License and distribute the Larger Work as a
-single product. In such a case, You must make sure the requirements of this
-License are fulfilled for the Covered Code.
-
-4. Inability to Comply Due to Statute or Regulation.
-
- If it is impossible for You to comply with any of the terms of this
-License with respect to some or all of the Covered Code due to statute,
-judicial order, or regulation then You must: (a) comply with the terms of this
-License to the maximum extent possible; and (b) describe the limitations and
-the code they affect. Such description must be included in the LEGAL file
-described in Section 3.4 and must be included with all distributions of the
-Source Code. Except to the extent prohibited by statute or regulation, such
-description must be sufficiently detailed for a recipient of ordinary skill to
-be able to understand it.
-
-5. Application of this License.
-
- This License applies to code to which the Initial Developer has attached
-the notice in Exhibit A and to related Covered Code.
-
-6. Versions of the License.
-
- 6.1. New Versions.
- Netscape Communications Corporation ("Netscape") may publish revised
-and/or new versions of the License from time to time. Each version will be
-given a distinguishing version number.
-
- 6.2. Effect of New Versions.
- Once Covered Code has been published under a particular version of the
-License, You may always continue to use it under the terms of that version.
-You may also choose to use such Covered Code under the terms of any subsequent
-version of the License published by Netscape. No one other than Netscape has
-the right to modify the terms applicable to Covered Code created under this
-License.
-
- 6.3. Derivative Works.
- If You create or use a modified version of this License (which you may
-only do in order to apply it to code which is not already Covered Code
-governed by this License), You must (a) rename Your license so that the
-phrases "Mozilla", "MOZILLAPL", "MOZPL", "Netscape", "MPL", "NPL" or
-any confusingly similar phrase do not appear in your license (except to note
-that your license differs from this License) and (b) otherwise make it clear
-that Your version of the license contains terms which differ from the Mozilla
-Public License and Netscape Public License. (Filling in the name of the
-Initial Developer, Original Code or Contributor in the notice described in
-Exhibit A shall not of themselves be deemed to be modifications of this
-License.)
-
-7. DISCLAIMER OF WARRANTY.
-
- COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS,
-WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT
-LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF DEFECTS, MERCHANTABLE,
-FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE
-QUALITY AND PERFORMANCE OF THE COVERED CODE IS WITH YOU. SHOULD ANY COVERED
-CODE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY
-OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR
-CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS
-LICENSE. NO USE OF ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS
-DISCLAIMER.
-
-8. TERMINATION.
-
- 8.1. This License and the rights granted hereunder will terminate
-automatically if You fail to comply with terms herein and fail to cure such
-breach within 30 days of becoming aware of the breach. All sublicenses to the
-Covered Code which are properly granted shall survive any termination of this
-License. Provisions which, by their nature, must remain in effect beyond the
-termination of this License shall survive.
-
- 8.2. If You initiate litigation by asserting a patent infringement
-claim (excluding declatory judgment actions) against Initial Developer or a
-Contributor (the Initial Developer or Contributor against whom You file such
-action is referred to as "Participant") alleging that:
-
- (a) such Participant's Contributor Version directly or indirectly
-infringes any patent, then any and all rights granted by such Participant to
-You under Sections 2.1 and/or 2.2 of this License shall, upon 60 days notice
-from Participant terminate prospectively, unless if within 60 days after
-receipt of notice You either: (i) agree in writing to pay Participant a
-mutually agreeable reasonable royalty for Your past and future use of
-Modifications made by such Participant, or (ii) withdraw Your litigation claim
-with respect to the Contributor Version against such Participant. If within
-60 days of notice, a reasonable royalty and payment arrangement are not
-mutually agreed upon in writing by the parties or the litigation claim is not
-withdrawn, the rights granted by Participant to You under Sections 2.1 and/or
-2.2 automatically terminate at the expiration of the 60 day notice period
-specified above.
-
- (b) any software, hardware, or device, other than such Participant's
-Contributor Version, directly or indirectly infringes any patent, then any
-rights granted to You by such Participant under Sections 2.1(b) and 2.2(b) are
-revoked effective as of the date You first made, used, sold, distributed, or
-had made, Modifications made by that Participant.
-
- 8.3. If You assert a patent infringement claim against Participant
-alleging that such Participant's Contributor Version directly or indirectly
-infringes any patent where such claim is resolved (such as by license or
-settlement) prior to the initiation of patent infringement litigation, then
-the reasonable value of the licenses granted by such Participant under
-Sections 2.1 or 2.2 shall be taken into account in determining the amount or
-value of any payment or license.
-
- 8.4. In the event of termination under Sections 8.1 or 8.2 above, all
-end user license agreements (excluding distributors and resellers) which have
-been validly granted by You or any distributor hereunder prior to termination
-shall survive termination.
-
-9. LIMITATION OF LIABILITY.
-
- UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT
-(INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL
-DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE, OR ANY
-SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY INDIRECT,
-SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING,
-WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER
-FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES,
-EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH
-DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH
-OR PERSONAL INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT
-APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE
-EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS
-EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU.
-
-10. U.S. GOVERNMENT END USERS.
-
- The Covered Code is a "commercial item," as that term is defined in 48
-C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer software" and
-"commercial computer software documentation," as such terms are used in 48
-C.F.R. 12.212 (Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R.
-227.7202-1 through 227.7202-4 (June 1995), all U.S. Government End Users
-acquire Covered Code with only those rights set forth herein.
-
-11. MISCELLANEOUS.
-
- This License represents the complete agreement concerning subject matter
-hereof. If any provision of this License is held to be unenforceable, such
-provision shall be reformed only to the extent necessary to make it
-enforceable. This License shall be governed by California law provisions
-(except to the extent applicable law, if any, provides otherwise), excluding
-its conflict-of-law provisions. With respect to disputes in which at least one
-party is a citizen of, or an entity chartered or registered to do business in
-the United States of America, any litigation relating to this License shall be
-subject to the jurisdiction of the Federal Courts of the Northern District of
-California, with venue lying in Santa Clara County, California, with the
-losing party responsible for costs, including without limitation, court costs
-and reasonable attorneys' fees and expenses. The application of the United
-Nations Convention on Contracts for the International Sale of Goods is
-expressly excluded. Any law or regulation which provides that the language of
-a contract shall be construed against the drafter shall not apply to this
-License.
-
-12. RESPONSIBILITY FOR CLAIMS.
-
- As between Initial Developer and the Contributors, each party is
-responsible for claims and damages arising, directly or indirectly, out of its
-utilization of rights under this License and You agree to work with Initial
-Developer and Contributors to distribute such responsibility on an equitable
-basis. Nothing herein is intended or shall be deemed to constitute any
-admission of liability.
-
-13. MULTIPLE-LICENSED CODE.
-
- Initial Developer may designate portions of the Covered Code as
-Multiple-Licensed. Multiple-Licensed means that the Initial Developer permits
-you to utilize portions of the Covered Code under Your choice of the MPL or
-the alternative licenses, if any, specified by the Initial Developer in the
-file described in Exhibit A.
-
-
-EXHIBIT A -Mozilla Public License.
-
- ``The contents of this file are subject to the Mozilla Public License
-Version 1.1 (the "License"); you may not use this file except in compliance
-with the License. You may obtain a copy of the License at
- http://www.mozilla.org/MPL/
-
- Software distributed under the License is distributed on an "AS IS"
-basis, WITHOUT WARRANTY OF
- ANY KIND, either express or implied. See the License for the specific
-language governing rights and
- limitations under the License.
-
- The Original Code is ______________________________________.
-
- The Initial Developer of the Original Code is ________________________.
-Portions created by
- ______________________ are Copyright (C) ______
-_______________________. All Rights
- Reserved.
-
- Contributor(s): ______________________________________.
-
- Alternatively, the contents of this file may be used under the terms of
-the _____ license (the [___] License), in which case the provisions of
-[______] License are applicable instead of those above. If you wish to allow
-use of your version of this file only under the terms of the [____] License
-and not to allow others to use your version of this file under the MPL,
-indicate your decision by deleting the provisions above and replace them
-with the notice and other provisions required by the [___] License. If you do
-not delete the provisions above, a recipient may use your version of this file
-under either the MPL or the [___] License."
-
- [NOTE: The text of this Exhibit A may differ slightly from the text of
-the notices in the Source Code files of the Original Code. You should use the
-text of this Exhibit A rather than the text found in the Original Code Source
-Code for Your Modifications.]
-
-
-===============================================================================
-
-For the JAX-WS Reference Implementation component:
-
-COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0
-
-
- 1. Definitions.
-
- 1.1. "Contributor" means each individual or entity that
- creates or contributes to the creation of Modifications.
-
- 1.2. "Contributor Version" means the combination of the
- Original Software, prior Modifications used by a
- Contributor (if any), and the Modifications made by that
- particular Contributor.
-
- 1.3. "Covered Software" means (a) the Original Software, or
- (b) Modifications, or (c) the combination of files
- containing Original Software with files containing
- Modifications, in each case including portions thereof.
-
- 1.4. "Executable" means the Covered Software in any form
- other than Source Code.
-
- 1.5. "Initial Developer" means the individual or entity
- that first makes Original Software available under this
- License.
-
- 1.6. "Larger Work" means a work which combines Covered
- Software or portions thereof with code not governed by the
- terms of this License.
-
- 1.7. "License" means this document.
-
- 1.8. "Licensable" means having the right to grant, to the
- maximum extent possible, whether at the time of the initial
- grant or subsequently acquired, any and all of the rights
- conveyed herein.
-
- 1.9. "Modifications" means the Source Code and Executable
- form of any of the following:
-
- A. Any file that results from an addition to,
- deletion from or modification of the contents of a
- file containing Original Software or previous
- Modifications;
-
- B. Any new file that contains any part of the
- Original Software or previous Modification; or
-
- C. Any new file that is contributed or otherwise made
- available under the terms of this License.
-
- 1.10. "Original Software" means the Source Code and
- Executable form of computer software code that is
- originally released under this License.
-
- 1.11. "Patent Claims" means any patent claim(s), now owned
- or hereafter acquired, including without limitation,
- method, process, and apparatus claims, in any patent
- Licensable by grantor.
-
- 1.12. "Source Code" means (a) the common form of computer
- software code in which modifications are made and (b)
- associated documentation included in or with such code.
-
- 1.13. "You" (or "Your") means an individual or a legal
- entity exercising rights under, and complying with all of
- the terms of, this License. For legal entities, "You"
- includes any entity which controls, is controlled by, or is
- under common control with You. For purposes of this
- definition, "control" means (a) the power, direct or
- indirect, to cause the direction or management of such
- entity, whether by contract or otherwise, or (b) ownership
- of more than fifty percent (50%) of the outstanding shares
- or beneficial ownership of such entity.
-
- 2. License Grants.
-
- 2.1. The Initial Developer Grant.
-
- Conditioned upon Your compliance with Section 3.1 below and
- subject to third party intellectual property claims, the
- Initial Developer hereby grants You a world-wide,
- royalty-free, non-exclusive license:
-
- (a) under intellectual property rights (other than
- patent or trademark) Licensable by Initial Developer,
- to use, reproduce, modify, display, perform,
- sublicense and distribute the Original Software (or
- portions thereof), with or without Modifications,
- and/or as part of a Larger Work; and
-
- (b) under Patent Claims infringed by the making,
- using or selling of Original Software, to make, have
- made, use, practice, sell, and offer for sale, and/or
- otherwise dispose of the Original Software (or
- portions thereof).
-
- (c) The licenses granted in Sections 2.1(a) and (b)
- are effective on the date Initial Developer first
- distributes or otherwise makes the Original Software
- available to a third party under the terms of this
- License.
-
- (d) Notwithstanding Section 2.1(b) above, no patent
- license is granted: (1) for code that You delete from
- the Original Software, or (2) for infringements
- caused by: (i) the modification of the Original
- Software, or (ii) the combination of the Original
- Software with other software or devices.
-
- 2.2. Contributor Grant.
-
- Conditioned upon Your compliance with Section 3.1 below and
- subject to third party intellectual property claims, each
- Contributor hereby grants You a world-wide, royalty-free,
- non-exclusive license:
-
- (a) under intellectual property rights (other than
- patent or trademark) Licensable by Contributor to
- use, reproduce, modify, display, perform, sublicense
- and distribute the Modifications created by such
- Contributor (or portions thereof), either on an
- unmodified basis, with other Modifications, as
- Covered Software and/or as part of a Larger Work; and
-
-
- (b) under Patent Claims infringed by the making,
- using, or selling of Modifications made by that
- Contributor either alone and/or in combination with
- its Contributor Version (or portions of such
- combination), to make, use, sell, offer for sale,
- have made, and/or otherwise dispose of: (1)
- Modifications made by that Contributor (or portions
- thereof); and (2) the combination of Modifications
- made by that Contributor with its Contributor Version
- (or portions of such combination).
-
- (c) The licenses granted in Sections 2.2(a) and
- 2.2(b) are effective on the date Contributor first
- distributes or otherwise makes the Modifications
- available to a third party.
-
- (d) Notwithstanding Section 2.2(b) above, no patent
- license is granted: (1) for any code that Contributor
- has deleted from the Contributor Version; (2) for
- infringements caused by: (i) third party
- modifications of Contributor Version, or (ii) the
- combination of Modifications made by that Contributor
- with other software (except as part of the
- Contributor Version) or other devices; or (3) under
- Patent Claims infringed by Covered Software in the
- absence of Modifications made by that Contributor.
-
- 3. Distribution Obligations.
-
- 3.1. Availability of Source Code.
-
- Any Covered Software that You distribute or otherwise make
- available in Executable form must also be made available in
- Source Code form and that Source Code form must be
- distributed only under the terms of this License. You must
- include a copy of this License with every copy of the
- Source Code form of the Covered Software You distribute or
- otherwise make available. You must inform recipients of any
- such Covered Software in Executable form as to how they can
- obtain such Covered Software in Source Code form in a
- reasonable manner on or through a medium customarily used
- for software exchange.
-
- 3.2. Modifications.
-
- The Modifications that You create or to which You
- contribute are governed by the terms of this License. You
- represent that You believe Your Modifications are Your
- original creation(s) and/or You have sufficient rights to
- grant the rights conveyed by this License.
-
- 3.3. Required Notices.
-
- You must include a notice in each of Your Modifications
- that identifies You as the Contributor of the Modification.
- You may not remove or alter any copyright, patent or
- trademark notices contained within the Covered Software, or
- any notices of licensing or any descriptive text giving
- attribution to any Contributor or the Initial Developer.
-
- 3.4. Application of Additional Terms.
-
- You may not offer or impose any terms on any Covered
- Software in Source Code form that alters or restricts the
- applicable version of this License or the recipients'
- rights hereunder. You may choose to offer, and to charge a
- fee for, warranty, support, indemnity or liability
- obligations to one or more recipients of Covered Software.
- However, you may do so only on Your own behalf, and not on
- behalf of the Initial Developer or any Contributor. You
- must make it absolutely clear that any such warranty,
- support, indemnity or liability obligation is offered by
- You alone, and You hereby agree to indemnify the Initial
- Developer and every Contributor for any liability incurred
- by the Initial Developer or such Contributor as a result of
- warranty, support, indemnity or liability terms You offer.
-
-
- 3.5. Distribution of Executable Versions.
-
- You may distribute the Executable form of the Covered
- Software under the terms of this License or under the terms
- of a license of Your choice, which may contain terms
- different from this License, provided that You are in
- compliance with the terms of this License and that the
- license for the Executable form does not attempt to limit
- or alter the recipient's rights in the Source Code form
- from the rights set forth in this License. If You
- distribute the Covered Software in Executable form under a
- different license, You must make it absolutely clear that
- any terms which differ from this License are offered by You
- alone, not by the Initial Developer or Contributor. You
- hereby agree to indemnify the Initial Developer and every
- Contributor for any liability incurred by the Initial
- Developer or such Contributor as a result of any such terms
- You offer.
-
- 3.6. Larger Works.
-
- You may create a Larger Work by combining Covered Software
- with other code not governed by the terms of this License
- and distribute the Larger Work as a single product. In such
- a case, You must make sure the requirements of this License
- are fulfilled for the Covered Software.
-
- 4. Versions of the License.
-
- 4.1. New Versions.
-
- Sun Microsystems, Inc. is the initial license steward and
- may publish revised and/or new versions of this License
- from time to time. Each version will be given a
- distinguishing version number. Except as provided in
- Section 4.3, no one other than the license steward has the
- right to modify this License.
-
- 4.2. Effect of New Versions.
-
- You may always continue to use, distribute or otherwise
- make the Covered Software available under the terms of the
- version of the License under which You originally received
- the Covered Software. If the Initial Developer includes a
- notice in the Original Software prohibiting it from being
- distributed or otherwise made available under any
- subsequent version of the License, You must distribute and
- make the Covered Software available under the terms of the
- version of the License under which You originally received
- the Covered Software. Otherwise, You may also choose to
- use, distribute or otherwise make the Covered Software
- available under the terms of any subsequent version of the
- License published by the license steward.
-
- 4.3. Modified Versions.
-
- When You are an Initial Developer and You want to create a
- new license for Your Original Software, You may create and
- use a modified version of this License if You: (a) rename
- the license and remove any references to the name of the
- license steward (except to note that the license differs
- from this License); and (b) otherwise make it clear that
- the license contains terms which differ from this License.
-
-
- 5. DISCLAIMER OF WARRANTY.
-
- COVERED SOFTWARE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS"
- BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,
- INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED
- SOFTWARE IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR
- PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND
- PERFORMANCE OF THE COVERED SOFTWARE IS WITH YOU. SHOULD ANY
- COVERED SOFTWARE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE
- INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF
- ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF
- WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF
- ANY COVERED SOFTWARE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS
- DISCLAIMER.
-
- 6. TERMINATION.
-
- 6.1. This License and the rights granted hereunder will
- terminate automatically if You fail to comply with terms
- herein and fail to cure such breach within 30 days of
- becoming aware of the breach. Provisions which, by their
- nature, must remain in effect beyond the termination of
- this License shall survive.
-
- 6.2. If You assert a patent infringement claim (excluding
- declaratory judgment actions) against Initial Developer or
- a Contributor (the Initial Developer or Contributor against
- whom You assert such claim is referred to as "Participant")
- alleging that the Participant Software (meaning the
- Contributor Version where the Participant is a Contributor
- or the Original Software where the Participant is the
- Initial Developer) directly or indirectly infringes any
- patent, then any and all rights granted directly or
- indirectly to You by such Participant, the Initial
- Developer (if the Initial Developer is not the Participant)
- and all Contributors under Sections 2.1 and/or 2.2 of this
- License shall, upon 60 days notice from Participant
- terminate prospectively and automatically at the expiration
- of such 60 day notice period, unless if within such 60 day
- period You withdraw Your claim with respect to the
- Participant Software against such Participant either
- unilaterally or pursuant to a written agreement with
- Participant.
-
- 6.3. In the event of termination under Sections 6.1 or 6.2
- above, all end user licenses that have been validly granted
- by You or any distributor hereunder prior to termination
- (excluding licenses granted to You by any distributor)
- shall survive termination.
-
- 7. LIMITATION OF LIABILITY.
-
- UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT
- (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE
- INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF
- COVERED SOFTWARE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE
- LIABLE TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR
- CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT
- LIMITATION, DAMAGES FOR LOST PROFITS, LOSS OF GOODWILL, WORK
- STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER
- COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN
- INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF
- LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL
- INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT
- APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO
- NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR
- CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION AND LIMITATION MAY NOT
- APPLY TO YOU.
-
- 8. U.S. GOVERNMENT END USERS.
-
- The Covered Software is a "commercial item," as that term is
- defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial
- computer software" (as that term is defined at 48 C.F.R.
- 252.227-7014(a)(1)) and "commercial computer software
- documentation" as such terms are used in 48 C.F.R. 12.212 (Sept.
- 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1
- through 227.7202-4 (June 1995), all U.S. Government End Users
- acquire Covered Software with only those rights set forth herein.
- This U.S. Government Rights clause is in lieu of, and supersedes,
- any other FAR, DFAR, or other clause or provision that addresses
- Government rights in computer software under this License.
-
- 9. MISCELLANEOUS.
-
- This License represents the complete agreement concerning subject
- matter hereof. If any provision of this License is held to be
- unenforceable, such provision shall be reformed only to the
- extent necessary to make it enforceable. This License shall be
- governed by the law of the jurisdiction specified in a notice
- contained within the Original Software (except to the extent
- applicable law, if any, provides otherwise), excluding such
- jurisdiction's conflict-of-law provisions. Any litigation
- relating to this License shall be subject to the jurisdiction of
- the courts located in the jurisdiction and venue specified in a
- notice contained within the Original Software, with the losing
- party responsible for costs, including, without limitation, court
- costs and reasonable attorneys' fees and expenses. The
- application of the United Nations Convention on Contracts for the
- International Sale of Goods is expressly excluded. Any law or
- regulation which provides that the language of a contract shall
- be construed against the drafter shall not apply to this License.
- You agree that You alone are responsible for compliance with the
- United States export administration regulations (and the export
- control laws and regulation of any other countries) when You use,
- distribute or otherwise make available any Covered Software.
-
- 10. RESPONSIBILITY FOR CLAIMS.
-
- As between Initial Developer and the Contributors, each party is
- responsible for claims and damages arising, directly or
- indirectly, out of its utilization of rights under this License
- and You agree to work with Initial Developer and Contributors to
- distribute such responsibility on an equitable basis. Nothing
- herein is intended or shall be deemed to constitute any admission
- of liability.
-
diff --git a/branches/java-post-M1/sca/tomcat/src/main/resources/META-INF/NOTICE b/branches/java-post-M1/sca/tomcat/src/main/resources/META-INF/NOTICE
deleted file mode 100644
index d48810c0ec..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/main/resources/META-INF/NOTICE
+++ /dev/null
@@ -1,18 +0,0 @@
-=========================================================================
-== NOTICE file corresponding to the section 4 d of ==
-== the Apache License, Version 2.0, ==
-== in this case for the Apache Tuscany distribution. ==
-=========================================================================
-
-This product includes software developed by the Apache Software Foundation
-(http://www.apache.org/).
-
-This product also includes software developed by:
-- the Eclipse Modeling Framework project (http://www.eclipse.org/emf/)
-- the Celtix project (http://celtix.objectweb.org/)
-- the Mozilla Rhino project (http://www.mozilla.org/rhino/)
-- the GlassFish JAX-WS project (https://jax-ws.dev.java.net/)
-
-Please read the LICENSE.txt file present in the root directory of this
-distribution.
-
diff --git a/branches/java-post-M1/sca/tomcat/src/main/resources/META-INF/README.txt b/branches/java-post-M1/sca/tomcat/src/main/resources/META-INF/README.txt
deleted file mode 100644
index 9b26d1690a..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/main/resources/META-INF/README.txt
+++ /dev/null
@@ -1,35 +0,0 @@
-Apache Tuscany M1 build (May, 2006)
-===================================
-
-http://incubator.apache.org/tuscany/
-
-Tuscany is an effort undergoing incubation at the Apache Software Foundation
-(ASF), sponsored by the Web Services PMC.
-
-Incubation is required of all newly accepted projects until a further review
-indicates that the infrastructure, communications, and decision making process
-have stabilized in a manner consistent with other successful ASF projects.
-
-While incubation status is not necessarily a reflection of the completeness or
-stability of the code, it does indicate that the project has yet to be fully
-endorsed by the ASF.
-
-
-Support
--------
-
-Any problem with this release can be reported to the Tuscany mailing list
-or in the JIRA issue tracker.
-
-Mailing list subscription:
- tuscany-dev-subscribe@ws.apache.org
-
-Jira:
- http://issues.apache.org/jira/browse/Tuscany
-
-
-Thank you for using Tuscany!
-
-
-The Tuscany Team.
-
diff --git a/branches/java-post-M1/sca/tomcat/src/main/resources/org/apache/tuscany/tomcat/LocalStrings.properties b/branches/java-post-M1/sca/tomcat/src/main/resources/org/apache/tuscany/tomcat/LocalStrings.properties
deleted file mode 100644
index 43fc99958e..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/main/resources/org/apache/tuscany/tomcat/LocalStrings.properties
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright (c) 2006 The Apache Software Foundation or its licensors, as applicable.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-runtime.loadSystemFailed = Error loading system configuration from: {0}
-runtime.registerSystemFailed = Error registering system configuration:
-runtime.started = Started Tuscany runtime
-runtime.stopped = Stopped Tuscany runtime
-
-tuscanyHost.notContext = Child of a TuscanyHost must be a StandardContext
-context.configLoad = Loading SCA configuration for application {0}
-
-context.configError = Error loading the SCA configuration
-context.moduleStartError = Error starting SCA module
-context.unknownRuntimeException = Unexpected RuntimeException
diff --git a/branches/java-post-M1/sca/tomcat/src/main/resources/org/apache/tuscany/tomcat/Messages.properties b/branches/java-post-M1/sca/tomcat/src/main/resources/org/apache/tuscany/tomcat/Messages.properties
deleted file mode 100644
index f926ca6488..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/main/resources/org/apache/tuscany/tomcat/Messages.properties
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright (c) 2005 The Apache Software Foundation or its licensors, as applicable.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-# ====================================================================
-# To code developer:
-# Do NOT change the properties between this line and the
-# "%%% END OF TRANSLATED PROPERTIES %%%" line.
-# Make a new property name, append to the end of the file and change
-# the code to use the new property.
-# ====================================================================
-
-# =====================================================================
-# %%% END OF TRANSLATED PROPERTIES %%%
-# =====================================================================
-# NLS_MESSAGEFORMAT_ALL
-
-SCA_STARTING =Tuscany: Starting SCA runtime.
-SCA_STARTED =Tuscany: Started SCA runtime.
-SCA_STOPPING =Tuscany: Stopping SCA runtime.
-SCA_STOPPED =Tuscany: Stopped SCA runtime.
-SCA_STARTING_MODULE =Tuscany: Starting SCA module component {0}.
-SCA_LOADED_MODULE =Tuscany: Loaded SCA module {0}.
-SCA_STARTED_MODULE =Tuscany: Started SCA module component {0}.
-SCA_STOPPING_MODULE =Tuscany: Stopping SCA module component {0}.
-SCA_STOPPED_MODULE =Tuscany: Stopped SCA module component {0}.
-SCA_START_MODULE_FAILED =Tuscany: Error starting SCA module component {0}: {1}.
-SCA_STOP_MODULE_FAILED =Tuscany: Error stopping SCA module component {0}: {1}.
-SCA_START_WEBAPP_FAILED =Tuscany: Error starting Web application {0}: {1}.
-SCA_STOP_WEBAPP_FAILED =Tuscany: Error stopping Web application {0}: {1}. \ No newline at end of file
diff --git a/branches/java-post-M1/sca/tomcat/src/main/resources/system.fragment b/branches/java-post-M1/sca/tomcat/src/main/resources/system.fragment
deleted file mode 100644
index e379e1d90b..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/main/resources/system.fragment
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- Copyright (c) 2005 The Apache Software Foundation or its licensors, as applicable.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- -->
-<moduleFragment xmlns="http://www.osoa.org/xmlns/sca/0.9"
- xmlns:tuscany="http://org.apache.tuscany/xmlns/system/0.9"
- name="org.apache.tuscany.tomcat">
-
- <entryPoint name="org.apache.tuscany.tomcat.TomcatHost">
- <interface.java interface="org.apache.tuscany.tomcat.TomcatHost"/>
- <tuscany:binding.system/>
- <reference>TomcatHost</reference>
- </entryPoint>
-
- <component name="TomcatHost">
- <tuscany:implementation.system class="org.apache.tuscany.tomcat.TomcatHost"/>
- </component>
-
-</moduleFragment>
diff --git a/branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/AbstractTomcatTest.java b/branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/AbstractTomcatTest.java
deleted file mode 100644
index babe25adc7..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/AbstractTomcatTest.java
+++ /dev/null
@@ -1,298 +0,0 @@
-/**
- *
- * Copyright 2006 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.tuscany.tomcat.integration;
-
-import java.io.ByteArrayOutputStream;
-import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.util.Collections;
-import java.util.Enumeration;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Vector;
-
-import javax.servlet.ServletInputStream;
-import javax.servlet.ServletOutputStream;
-
-import junit.framework.TestCase;
-
-import org.apache.catalina.Globals;
-import org.apache.catalina.Host;
-import org.apache.catalina.connector.Connector;
-import org.apache.catalina.connector.Request;
-import org.apache.catalina.connector.Response;
-import org.apache.catalina.core.ApplicationFilterFactory;
-import org.apache.catalina.core.StandardEngine;
-
-/**
- * @version $Rev$ $Date$
- */
-public class AbstractTomcatTest extends TestCase {
- protected Map<String, Class<?>> classes;
- protected Host host;
- protected MockRequest request;
- protected MockResponse response;
- protected StandardEngine engine;
-
- protected void setUp() throws Exception {
- super.setUp();
- classes = new HashMap<String, Class<?>>();
- classes.put(TestServlet.class.getName(), TestServlet.class);
- classes.put(HelloWorldService.class.getName(), HelloWorldService.class);
- classes.put(HelloWorldImpl.class.getName(), HelloWorldImpl.class);
- }
-
- protected void setupTomcat(File baseDir, Host host) throws Exception {
- File appBase = new File(baseDir, "webapps").getCanonicalFile();
-
- // Configure a Tomcat Engine
- engine = new StandardEngine();
- engine.setName("Catalina");
- engine.setDefaultHost("localhost");
- engine.setBaseDir(baseDir.getAbsolutePath());
-
- this.host = host;
- host.setName("localhost");
- host.setAppBase(appBase.getAbsolutePath());
- engine.addChild(host);
-
- // buildSource a empty request/response
- Connector connector = new Connector("HTTP/1.1");
- request = new MockRequest();
- request.setConnector(connector);
- response = new MockResponse();
- request.setResponse(response);
- request.setMethod("POST");
- request.setScheme("http");
- }
-
- public static class MockRequest extends Request {
- private String method;
- private String scheme;
- private String requestURI;
- private String contentType;
- private Map<String,String> headers = new HashMap<String,String>();
- private ServletInputStream inputStream;
-
- public void setScheme(String scheme) {
- this.scheme = scheme;
- }
-
- public void setMethod(String method) {
- this.method = method;
- }
-
- public void setRequestURI(String requestURI) {
- this.requestURI = requestURI;
- }
-
- public String getScheme() {
- return scheme;
- }
-
- public String getMethod() {
- return method;
- }
-
- public int getServerPort() {
- return 80;
- }
-
- public String getServerName() {
- return "localhost";
- }
-
- public String getRequestURI() {
- return requestURI;
- }
-
- public void setAttribute(String name, Object value) {
- if (name.startsWith("org.apache.tomcat.")) {
- return;
- }
- super.setAttribute(name, value);
- }
-
- public Object getAttribute(String name) {
- if (name.equals(Globals.DISPATCHER_TYPE_ATTR)) {
- return (dispatcherType == null)
- ? ApplicationFilterFactory.REQUEST_INTEGER
- : dispatcherType;
- } else if (name.equals(Globals.DISPATCHER_REQUEST_PATH_ATTR)) {
- return (requestDispatcherPath == null)
- ? getRequestPathMB().toString()
- : requestDispatcherPath.toString();
- }
-
- return attributes.get(name);
- }
-
- public String getHeader(String name) {
- return headers.get(name);
- }
-
- public Enumeration getHeaderNames() {
- return Collections.enumeration(headers.keySet());
- }
-
- public void setContentType(String contentType) {
- this.contentType = contentType;
- }
-
- public String getContentType() {
- return contentType;
- }
-
- public ServletInputStream getInputStream() throws IOException {
- return inputStream;
- }
-
- public InputStream getStream() {
- return inputStream;
- }
-
- public void setStream(ServletInputStream stream) {
- inputStream = stream;
- }
-
- @Override
- public String getRemoteHost() {
-
- return "locahost";
- }
-
- @Override
- public int getRemotePort() {
-
- return 1080;
- }
-
- @Override
- public String getRemoteAddr() {
-
- return "127.0.0.1";
- }
-
- @Override
- public Enumeration getParameterNames() {
- return new Vector().elements();
- }
-
- @Override
- public String getParameter(String param) {
- if ("wsdl".equals(param)) {
- return "";
- } else {
- return null;
- }
- }
- }
-
- public static class MockResponse extends Response {
- private boolean suspended;
- private String contentType;
- private int status = 200;
- private Map<String, String> headers = new HashMap<String, String>();
- private MockOutputStream outputStream = new MockOutputStream();
-
- public boolean isCommitted() {
- return false;
- }
-
- public boolean isAppCommitted() {
- return false;
- }
-
- public void sendAcknowledgement() {
- }
-
- public void setSuspended(boolean suspended) {
- this.suspended = suspended;
- }
-
- public boolean isSuspended() {
- return suspended;
- }
-
- public void setStatus(int status, String message) {
- this.status = status;
- }
-
- public int getStatus() {
- return status;
- }
-
- public void reset() {
- }
-
- public void addHeader(String name, String value) {
- headers.put(name, value);
- }
-
- public String[] getHeaderNames() {
- return (String[]) headers.keySet().toArray(new String[headers.size()]);
- }
-
- public String getContentType() {
- return contentType;
- }
-
- public void setContentType(String contentType) {
- this.contentType = contentType;
- }
-
- public OutputStream getStream() {
- return outputStream;
- }
-
- public ServletOutputStream getOutputStream() throws IOException {
- return outputStream;
- }
- }
-
- public static class MockInputStream extends ServletInputStream {
- private final byte[] bytes;
- private int index;
-
- public MockInputStream(byte[] bytes) {
- this.bytes = bytes;
- }
-
- public int read() throws IOException {
- if (index == bytes.length) {
- return -1;
- }
- else {
- return bytes[index++];
- }
- }
- }
-
- public static class MockOutputStream extends ServletOutputStream {
- private ByteArrayOutputStream os = new ByteArrayOutputStream();
-
- public void write(int b) throws IOException {
- os.write(b);
- }
-
- public String toString() {
- return os.toString();
- }
- }
-}
diff --git a/branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/HelloWorldImpl.java b/branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/HelloWorldImpl.java
deleted file mode 100644
index 4db61fa58c..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/HelloWorldImpl.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/**
- *
- * Copyright 2006 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.tuscany.tomcat.integration;
-
-import org.osoa.sca.annotations.Service;
-
-/**
- * @version $Rev$ $Date$
- */
-@Service(HelloWorldService.class)
-public class HelloWorldImpl implements HelloWorldService {
- public String getGreetings(String name) {
- return "Hello " + name;
- }
-}
diff --git a/branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/HelloWorldService.java b/branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/HelloWorldService.java
deleted file mode 100644
index a9b78cadf4..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/HelloWorldService.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/**
- *
- * Copyright 2006 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.tuscany.tomcat.integration;
-
-/**
- * @version $Rev$ $Date$
- */
-public interface HelloWorldService {
- public String getGreetings(String name);
-}
diff --git a/branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/TestClassLoader.java b/branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/TestClassLoader.java
deleted file mode 100644
index 486fec5bd4..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/TestClassLoader.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/**
- *
- * Copyright 2006 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.tuscany.tomcat.integration;
-
-import java.util.Map;
-import java.net.URL;
-
-import org.apache.catalina.loader.WebappClassLoader;
-
-/**
- * A version of Tomcat's application classloader that only allows certain classes to be loaded.
- * This is used in the integration tests to make sure that no Tuscany classes are exposed to the
- * application except the ones needed to run the tests.
- *
- * @version $Rev$ $Date$
- */
-@SuppressWarnings({"CustomClassloader"})
-public class TestClassLoader extends WebappClassLoader {
- private final Map<String, Class<?>> classes;
-
- public TestClassLoader(Map<String, Class<?>> classes, URL url, ClassLoader parent) {
- super(parent);
- this.classes = classes;
- addURL(url);
- }
-
- public Class<?> findClass(String name) throws ClassNotFoundException {
- Class<?> clazz = classes.get(name);
- if (clazz != null) {
- return clazz;
- }
- if (name.startsWith("java.") || name.startsWith("javax.") || name.startsWith("org.osoa.")) {
- return super.findClass(name);
- }
- throw new ClassNotFoundException(name);
- }
-}
diff --git a/branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/TestServlet.java b/branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/TestServlet.java
deleted file mode 100644
index 2cd8ce06a2..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/TestServlet.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/**
- *
- * Copyright 2005 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.tuscany.tomcat.integration;
-
-import java.io.IOException;
-import javax.servlet.GenericServlet;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-
-import org.osoa.sca.CurrentModuleContext;
-import org.osoa.sca.ModuleContext;
-
-/**
- * @version $Rev$ $Date$
- */
-@SuppressWarnings({"serial"})
-public class TestServlet extends GenericServlet {
-
- public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
- Object runtime = getServletContext().getAttribute("org.apache.tuscany.core.runtime.RuntimeContext");
- if (runtime == null || "org.apache.tuscany.core.runtime.RuntimeContext".equals(runtime.getClass().getName())) {
- throw new ServletException("Runtime not bound to org.apache.tuscany.core.runtime.RuntimeContext");
- }
-
- Object module = getServletContext().getAttribute("org.apache.tuscany.core.webapp.ModuleComponentContext");
- if (module == null || "org.apache.tuscany.core.context.CompositeContext".equals(module.getClass().getName())) {
- throw new ServletException("Module composite not bound to org.apache.tuscany.core.webapp.ModuleComponentContext");
- }
-
- ModuleContext moduleContext = CurrentModuleContext.getContext();
- if (moduleContext == null) {
- throw new ServletException("No module context returned");
- }
- String name = moduleContext.getName();
- if (!"/testContext".equals(name)) {
- throw new ServletException("Invalid module context name: " + name);
- }
-
- HelloWorldService helloService = (HelloWorldService) moduleContext.locateService("HelloWorld");
- String greetings = helloService.getGreetings("World");
- if (!"Hello World".equals(greetings)) {
- throw new ServletException("Serivce returned " + greetings);
- }
- }
-}
diff --git a/branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/TomcatIntegrationTestCase.java b/branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/TomcatIntegrationTestCase.java
deleted file mode 100644
index 75bd85cf65..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/TomcatIntegrationTestCase.java
+++ /dev/null
@@ -1,200 +0,0 @@
-/**
- *
- * Copyright 2005 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.tuscany.tomcat.integration;
-
-import org.apache.catalina.Valve;
-import org.apache.catalina.Loader;
-import org.apache.catalina.Wrapper;
-import org.apache.catalina.core.StandardContext;
-import org.apache.catalina.core.StandardWrapper;
-import org.apache.catalina.startup.ContextConfig;
-import org.apache.tomcat.util.buf.MessageBytes;
-import org.apache.tomcat.util.http.mapper.MappingData;
-
-import org.apache.tuscany.tomcat.TuscanyHost;
-import org.apache.tuscany.tomcat.TuscanyValve;
-import org.apache.tuscany.tomcat.ContainerLoader;
-
-import java.io.File;
-import java.io.IOException;
-import javax.servlet.Servlet;
-import javax.servlet.ServletConfig;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-
-/**
- * @version $Rev$ $Date$
- */
-public class TomcatIntegrationTestCase extends AbstractTomcatTest {
- protected File app1;
- private Loader loader;
- private StandardContext ctx;
-
- public void testComponentIntegration() throws Exception {
- // define our test servlet
- StandardWrapper wrapper = new StandardWrapper();
- wrapper.setServletClass(TestServlet.class.getName());
- ctx.addChild(wrapper);
-
- host.addChild(ctx);
- boolean found = false;
- for (Valve valve: ctx.getPipeline().getValves()) {
- if (valve instanceof TuscanyValve) {
- found = true;
- break;
- }
- }
- assertTrue("TuscanyValve not in pipeline", found);
-
- request.setContext(ctx);
- request.setWrapper(wrapper);
- host.invoke(request, response);
-
- host.removeChild(ctx);
- }
-
- public void testWebServiceIntegration() throws Exception {
- host.addChild(ctx);
-
- Wrapper wrapper = (Wrapper) ctx.findChild("/services");
- assertNotNull("No webservice wrapper present", wrapper);
- request.setContext(ctx);
- request.setRequestURI("/services/HelloWorldService");
- request.setWrapper(wrapper);
- request.setContentType("text/xml");
- String xml = "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:q0=\"http://helloworldaxis.samples.tuscany.apache.org\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">\n" +
- "<soapenv:Body>\n" +
- "<q0:getGreetings>\n" +
- "<q0:in0>World</q0:in0>\n" +
- "</q0:getGreetings>\n" +
- "</soapenv:Body>\n" +
- "</soapenv:Envelope>\n";
- request.setStream(new MockInputStream(xml.getBytes("UTF-8")));
- host.invoke(request, response);
- xml = "<?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\"><soapenv:Header /><soapenv:Body><helloworldaxis:getGreetingsResponse xmlns:helloworldaxis=\"http://helloworldaxis.samples.tuscany.apache.org\">\n" +
- " <helloworldaxis:getGreetingsReturn>Hello World</helloworldaxis:getGreetingsReturn>\n" +
- "</helloworldaxis:getGreetingsResponse></soapenv:Body></soapenv:Envelope>";
- assertEquals(xml, response.getOutputStream().toString());
-
- assertEquals(200, response.getStatus());
- host.removeChild(ctx);
- }
-
- /**
- * Test ?WSDL works
- */
- public void testWebServiceIntegrationWSDL() throws Exception {
-// ?WSDL doesn't work right now: TUSCANY-61
-// Wrapper wrapper = (Wrapper) ctx.findChild("/services");
-// assertNotNull("No webservice wrapper present", wrapper);
-// request.setContext(ctx);
-// request.setRequestURI("/services/HelloWorldService");
-// request.setMethod("GET");
-//
-// request.setWrapper(wrapper);
-//
-// host.invoke(request, response);
-//
-// assertEquals(200, response.getStatus());
-//
-// String s = response.getOutputStream().toString(); // would be better to validate with WSDl4J
-// assertTrue(s.contains("<wsdl:service name=\"HelloWorldServiceImplService\">"));
-//
-// host.removeChild(ctx);
- }
-
- public void testServletMapping() throws Exception {
- TuscanyHost tuscanyHost = (TuscanyHost) host;
- host.addChild(ctx);
-
- MockServlet servlet = new MockServlet();
- tuscanyHost.registerMapping("/testContext/magicServlet", servlet);
- assertSame(ctx, host.map("/testContext/magicServlet"));
- MessageBytes uri = MessageBytes.newInstance();
- uri.setString("/testContext/magicServlet");
- MappingData mappingData = new MappingData();
- ctx.getMapper().map(uri, mappingData);
- assertTrue(mappingData.requestPath.equals("/magicServlet"));
-
- assertSame(servlet, tuscanyHost.getMapping("/testContext/magicServlet"));
- host.removeChild(ctx);
- }
-
- public void testServletMappingWithWildard() throws Exception {
- TuscanyHost tuscanyHost = (TuscanyHost) host;
- host.addChild(ctx);
-
- MockServlet servlet = new MockServlet();
- tuscanyHost.registerMapping("/testContext/magicServlet/*", servlet);
- assertSame(ctx, host.map("/testContext/magicServlet/foo"));
- MessageBytes uri = MessageBytes.newInstance();
- uri.setString("/testContext/magicServlet/foo");
- MappingData mappingData = new MappingData();
- mappingData.recycle();
- ctx.getMapper().map(uri, mappingData);
- assertTrue(mappingData.requestPath.equals("/magicServlet/foo"));
-
- assertSame(servlet, tuscanyHost.getMapping("/testContext/magicServlet/bar"));
- host.removeChild(ctx);
- }
-
- protected void setUp() throws Exception {
- super.setUp();
- app1 = new File(getClass().getResource("/app1").toURI());
- File baseDir = new File(app1, "../../tomcat").getCanonicalFile();
- setupTomcat(baseDir, new TuscanyHost());
- engine.start();
-
- TestClassLoader cl = new TestClassLoader(classes, new File(app1, "WEB-INF/classes").toURL(), getClass().getClassLoader());
- cl.start();
- loader = new ContainerLoader(cl);
-
- // create the webapp Context
- ctx = new StandardContext();
- ctx.addLifecycleListener(new ContextConfig());
- ctx.setName("/testContext");
- ctx.setDocBase(app1.getAbsolutePath());
- ctx.setLoader(loader);
- }
-
- protected void tearDown() throws Exception {
- engine.stop();
- super.tearDown();
- }
-
- public static class MockServlet implements Servlet {
- public void init(ServletConfig servletConfig) throws ServletException {
- throw new UnsupportedOperationException();
- }
-
- public ServletConfig getServletConfig() {
- throw new UnsupportedOperationException();
- }
-
- public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
- }
-
- public String getServletInfo() {
- throw new UnsupportedOperationException();
- }
-
- public void destroy() {
- throw new UnsupportedOperationException();
- }
- }
-}
diff --git a/branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/TomcatStandaloneTestCase.java b/branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/TomcatStandaloneTestCase.java
deleted file mode 100644
index 1aeb966625..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/test/java/org/apache/tuscany/tomcat/integration/TomcatStandaloneTestCase.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/**
- *
- * Copyright 2005 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.tuscany.tomcat.integration;
-
-import java.io.File;
-
-import org.apache.catalina.Valve;
-import org.apache.catalina.Wrapper;
-import org.apache.catalina.core.StandardContext;
-import org.apache.catalina.core.StandardHost;
-import org.apache.catalina.startup.ContextConfig;
-
-import org.apache.tuscany.tomcat.TuscanyValve;
-
-/**
- * @version $Rev$ $Date$
- */
-@SuppressWarnings({"ClassLoader2Instantiation"})
-public class TomcatStandaloneTestCase extends AbstractTomcatTest {
- protected File app2;
-
- public void testRuntimeIntegration() throws Exception {
- StandardContext ctx = new StandardContext();
-
- // caution: this sets the parent of the webapp loader to the test classloader so it can find TestServlet
- // anything that relies on the TCCL may not work correctly
- ClassLoader cl = TestServlet.class.getClassLoader();
- ctx.setParentClassLoader(cl);
-
- ctx.addLifecycleListener(new ContextConfig());
- ctx.setName("/testContext");
- ctx.setDocBase(app2.getAbsolutePath());
-
-// Doesn't work, see TUSCANY-328
-// host.addChild(ctx);
-// boolean found = false;
-// for (Valve valve: ctx.getPipeline().getValves()) {
-// if (valve instanceof TuscanyValve) {
-// found = true;
-// break;
-// }
-// }
-// assertFalse("TuscanyValve in pipeline", found);
-
-// request.setContext(ctx);
-// request.setWrapper((Wrapper) ctx.findChild("TestServlet"));
-// host.invoke(request, response);
-
-// host.removeChild(ctx);
- }
-
- protected void setUp() throws Exception {
- super.setUp();
- app2 = new File(getClass().getResource("/app2").toURI());
- File baseDir = new File(app2, "../../tomcat").getCanonicalFile();
- setupTomcat(baseDir, new StandardHost());
- engine.start();
- }
-
- protected void tearDown() throws Exception {
- engine.stop();
- super.tearDown();
- }
-
-}
diff --git a/branches/java-post-M1/sca/tomcat/src/test/resources/app1/WEB-INF/axis2.xml b/branches/java-post-M1/sca/tomcat/src/test/resources/app1/WEB-INF/axis2.xml
deleted file mode 100644
index 07566475de..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/test/resources/app1/WEB-INF/axis2.xml
+++ /dev/null
@@ -1,183 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Copyright (c) 2005-2006 The Apache Software Foundation or its licensors, as applicable.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- -->
-<axisconfig name="AxisJava2.0">
- <!-- ================================================= -->
- <!-- Parameters -->
- <!-- ================================================= -->
- <parameter name="hotdeployment" locked="false">false</parameter>
- <parameter name="hotupdate" locked="false">false</parameter>
- <parameter name="enableMTOM" locked="false">false</parameter>
- <!-- Uncomment this to enable REST support -->
- <!-- <parameter name="enableREST" locked="false">true</parameter>-->
-
-
- <parameter name="userName" locked="false">admin</parameter>
- <parameter name="password" locked="false">axis2</parameter>
-
- <parameter name="seralizeLocation" locked="false">.</parameter>
- <hostConfiguration>
- <ip>127.0.0.1</ip>
- <port>5555</port>
- </hostConfiguration>
-
-
- <!--if you want to extract the service archive file and work with that please uncomment this-->
- <!--else , it wont extract archive file or does not take into consideration if someone drop-->
- <!--exploded directory into /service directory-->
- <!--<parameter name="extractServiceArchive" locked="false">true</parameter>-->
-
-
- <!-- The way of adding listener to the system-->
- <!-- <listener class="org.apache.axis2.ObserverIMPL">-->
- <!-- <parameter name="RSS_URL" locked="false">http://127.0.0.1/rss</parameter>-->
- <!-- </listener>-->
-
- <!-- ================================================= -->
- <!-- Message Receivers -->
- <!-- ================================================= -->
- <!--This is the Deafult Message Receiver for the system , if you want to have MessageReceivers for -->
- <!--all the other MEP implement it and add the correct entry to here , so that you can refer from-->
- <!--any operation -->
- <!--Note : You can ovride this for particular service by adding the same element with your requirement-->
- <messageReceivers>
- <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"
- class="org.apache.axis2.receivers.RawXMLINOnlyMessageReceiver"/>
- <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"
- class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>
- </messageReceivers>
- <!-- ================================================= -->
- <!-- Transport Ins -->
- <!-- ================================================= -->
- <transportReceiver name="http" class="org.apache.axis2.transport.http.SimpleHTTPServer">
- <parameter name="port" locked="false">6060</parameter>
- </transportReceiver>
-
- <!-- Uncomment this one with the appropriate papameters to enable the SMTP transport Receiver
- <transportReceiver name="mail" class="org.apache.axis2.transport.mail.SimpleMailListener">
- <parameter name="transport.mail.pop3.host" locked="false">127.0.0.1</parameter>
- <parameter name="transport.mail.pop3.user" locked="false">axis2</parameter>
- <parameter name="transport.mail.pop3.password" locked="false">axis2</parameter>
- <parameter name="transport.mail.pop3.port" locked="false">110</parameter>
- <parameter name="transport.mail.replyToAddress" locked="false">axis2@127.0.0.1</parameter>
- </transportReceiver> -->
-
- <!--REMOVED FOR TUSCANY transportReceiver name="tcp" class="org.apache.axis2.transport.tcp.TCPServer">
- <parameter name="port" locked="false">6060</parameter>
- </transportReceiver -->
-
- <!--REMOVED FOR TUSCANY transportReceiver name="jms" class="org.apache.axis2.transport.jms.SimpleJMSListener">
- <parameter name="transport.jms.Destination" locked="false">dynamicQueues/FOO</parameter>
- <parameter name="java.naming.factory.initial" locked="false">
- org.activemq.jndi.ActiveMQInitialContextFactory</parameter>
- <parameter name="java.naming.provider.url" locked="false">tcp://localhost:61616</parameter>
- </transportReceiver>
- -->
-
- <!-- ================================================= -->
- <!-- Transport Outs -->
- <!-- ================================================= -->
-
- <!--REMOVED FOR TUSCANY transportSender name="tcp" class="org.apache.axis2.transport.tcp.TCPTransportSender"/> -->
- <transportSender name="local" class="org.apache.axis2.transport.local.LocalTransportSender"/>
- <!--REMOVED FOR TUSCANY transportSender name="jms" class="org.apache.axis2.transport.jms.JMSSender"/> -->
- <transportSender name="http" class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
- <parameter name="PROTOCOL" locked="false">HTTP/1.1</parameter>
- <parameter name="Transfer-Encoding" locked="false">chunked</parameter>
- </transportSender>
- <transportSender name="https"
- class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
- <parameter name="PROTOCOL" locked="false">HTTP/1.1</parameter>
- <parameter name="Transfer-Encoding" locked="false">chunked</parameter>
- </transportSender>
-
- <!-- Uncomment this one with the appropriate papameters to enable the SMTP transport Receiver
- <transportSender name="mailto" class="org.apache.axis2.transport.mail.MailTransportSender">
- <parameter name="transport.mail.smtp.host" locked="false">127.0.0.1</parameter>
- <parameter name="transport.mail.smtp.user" locked="false">axis2</parameter>
- <parameter name="transport.mail.smtp.password" locked="false">axis2</parameter>
- <parameter name="transport.mail.smtp.port" locked="false">25</parameter>
- </transportSender>
- -->
-
- <!-- ================================================= -->
- <!-- Global Modules -->
- <!-- ================================================= -->
- <!-- Comment this to disable Addressing -->
- <!--REMOVED FOR TUSCANY module ref="addressing"/> -->
-
-
- <!--Configuring module , providing parameters for modules whether they refer or not-->
- <!--<moduleConfig name="addressing">-->
- <!--<parameter name="addressingPara" locked="false">N/A</parameter>-->
- <!--</moduleConfig>-->
-
- <!-- ================================================= -->
- <!-- Phases -->
- <!-- ================================================= -->
- <phaseOrder type="inflow">
- <!-- System pre defined phases -->
- <phase name="TransportIn"/>
- <phase name="PreDispatch"/>
- <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
- <handler name="AddressingBasedDispatcher"
- class="org.apache.axis2.engine.AddressingBasedDispatcher">
- <order phase="Dispatch"/>
- </handler>
-
- <handler name="RequestURIBasedDispatcher"
- class="org.apache.axis2.engine.RequestURIBasedDispatcher">
- <order phase="Dispatch"/>
- </handler>
-
- <handler name="SOAPActionBasedDispatcher"
- class="org.apache.axis2.engine.SOAPActionBasedDispatcher">
- <order phase="Dispatch"/>
- </handler>
-
- <handler name="SOAPMessageBodyBasedDispatcher"
- class="org.apache.axis2.engine.SOAPMessageBodyBasedDispatcher">
- <order phase="Dispatch"/>
- </handler>
- <handler name="InstanceDispatcher"
- class="org.apache.axis2.engine.InstanceDispatcher">
- <order phase="PostDispatch"/>
- </handler>
- </phase>
- <!-- System pre defined phases -->
- <!-- After Postdispatch phase module author or or service author can add any phase he want -->
- <phase name="userphase1"/>
- </phaseOrder>
- <phaseOrder type="outflow">
- <!-- user can add his own phases to this area -->
- <phase name="userphase1"/>
- <!--system predefined phase-->
- <!--these phase will run irrespective of the service-->
- <phase name="PolicyDetermination"/>
- <phase name="MessageOut"/>
- </phaseOrder>
- <phaseOrder type="INfaultflow">
- <!-- user can add his own phases to this area -->
- <phase name="userphase1"/>
- </phaseOrder>
- <phaseOrder type="Outfaultflow">
- <!-- user can add his own phases to this area -->
- <phase name="userphase1"/>
- <phase name="PolicyDetermination"/>
- <phase name="MessageOut"/>
- </phaseOrder>
-</axisconfig>
-
diff --git a/branches/java-post-M1/sca/tomcat/src/test/resources/app1/WEB-INF/classes/sca.module b/branches/java-post-M1/sca/tomcat/src/test/resources/app1/WEB-INF/classes/sca.module
deleted file mode 100644
index 4d19c4d192..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/test/resources/app1/WEB-INF/classes/sca.module
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright (c) 2005 The Apache Software Foundation or its licensors, as applicable.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- -->
-<module xmlns="http://www.osoa.org/xmlns/sca/0.9" xmlns:v="http://www.osoa.org/xmlns/sca/values/0.9"
- name="testModule">
-
- <import.sdo wsdlLocation="wsdl/helloworld.wsdl"/>
- <import.wsdl wsdlLocation="wsdl/helloworld.wsdl"/>
-
- <entryPoint name="HelloWorldService">
- <interface.wsdl interface="http://helloworldaxis.samples.tuscany.apache.org#wsdl.interface(HelloWorldServiceImpl)"/>
- <binding.ws port="http://helloworldaxis.samples.tuscany.apache.org#wsdl.endpoint(HelloWorldServiceImplService/helloworld)"/>
- <reference>HelloWorld/HelloWorldService</reference>
- </entryPoint>
-
- <component name="HelloWorld">
- <implementation.java class="org.apache.tuscany.tomcat.integration.HelloWorldImpl"/>
- </component>
-
-</module>
diff --git a/branches/java-post-M1/sca/tomcat/src/test/resources/app1/WEB-INF/classes/wsdl/helloworld.wsdl b/branches/java-post-M1/sca/tomcat/src/test/resources/app1/WEB-INF/classes/wsdl/helloworld.wsdl
deleted file mode 100644
index 3d299481e5..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/test/resources/app1/WEB-INF/classes/wsdl/helloworld.wsdl
+++ /dev/null
@@ -1,97 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright (c) 2005 The Apache Software Foundation or its licensors, as applicable.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- -->
-<wsdl:definitions targetNamespace="http://helloworldaxis.samples.tuscany.apache.org" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://helloworldaxis.samples.tuscany.apache.org" xmlns:intf="http://helloworldaxis.samples.tuscany.apache.org" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="helloworld">
- <!--WSDL created by Apache Axis version: 1.2.1
-Built on Jun 14, 2005 (09:15:57 EDT)-->
- <wsdl:types>
- <schema elementFormDefault="qualified" targetNamespace="http://helloworldaxis.samples.tuscany.apache.org" xmlns="http://www.w3.org/2001/XMLSchema">
- <element name="getGreetings">
- <complexType>
- <sequence>
- <element name="in0" type="xsd:string"/>
- </sequence>
- </complexType>
- </element>
- <element name="getGreetingsResponse">
- <complexType>
- <sequence>
- <element name="getGreetingsReturn" type="xsd:string"/>
- </sequence>
- </complexType>
- </element>
- </schema>
- </wsdl:types>
-
- <wsdl:message name="getGreetingsRequest">
-
- <wsdl:part element="impl:getGreetings" name="parameters"/>
-
- </wsdl:message>
-
- <wsdl:message name="getGreetingsResponse">
-
- <wsdl:part element="impl:getGreetingsResponse" name="parameters"/>
-
- </wsdl:message>
-
- <wsdl:portType name="HelloWorldServiceImpl">
-
- <wsdl:operation name="getGreetings">
-
- <wsdl:input message="impl:getGreetingsRequest" name="getGreetingsRequest"/>
-
- <wsdl:output message="impl:getGreetingsResponse" name="getGreetingsResponse"/>
-
- </wsdl:operation>
-
- </wsdl:portType>
-
- <wsdl:binding name="helloworldSoapBinding" type="impl:HelloWorldServiceImpl">
-
- <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
-
- <wsdl:operation name="getGreetings">
-
- <wsdlsoap:operation soapAction=""/>
-
- <wsdl:input name="getGreetingsRequest">
-
- <wsdlsoap:body use="literal"/>
-
- </wsdl:input>
-
- <wsdl:output name="getGreetingsResponse">
-
- <wsdlsoap:body use="literal"/>
-
- </wsdl:output>
-
- </wsdl:operation>
-
- </wsdl:binding>
-
- <wsdl:service name="HelloWorldServiceImplService">
-
- <wsdl:port binding="impl:helloworldSoapBinding" name="helloworld">
-
- <wsdlsoap:address location="http://localhost:8080/sample-helloworldws/services/HelloWorldService"/>
-
- </wsdl:port>
-
- </wsdl:service>
-
-</wsdl:definitions>
diff --git a/branches/java-post-M1/sca/tomcat/src/test/resources/app1/WEB-INF/web.xml b/branches/java-post-M1/sca/tomcat/src/test/resources/app1/WEB-INF/web.xml
deleted file mode 100644
index f109ddf404..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/test/resources/app1/WEB-INF/web.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE web-app
- PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
- "http://java.sun.com/dtd/web-app_2_3.dtd">
-<!--
- * Copyright (c) 2005-2006 The Apache Software Foundation or its licensors, as applicable.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- -->
-<web-app>
-</web-app>
diff --git a/branches/java-post-M1/sca/tomcat/src/test/resources/app1/index.html b/branches/java-post-M1/sca/tomcat/src/test/resources/app1/index.html
deleted file mode 100644
index 71653b974f..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/test/resources/app1/index.html
+++ /dev/null
@@ -1,18 +0,0 @@
-<html>
-<!--
- Copyright (c) 2005 The Apache Software Foundation or its licensors, as applicable.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- -->
-<body>Hello World</body>
-</html>
diff --git a/branches/java-post-M1/sca/tomcat/src/test/resources/app2/WEB-INF/classes/sca.module b/branches/java-post-M1/sca/tomcat/src/test/resources/app2/WEB-INF/classes/sca.module
deleted file mode 100644
index 90ad0d44e0..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/test/resources/app2/WEB-INF/classes/sca.module
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright (c) 2005 The Apache Software Foundation or its licensors, as applicable.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- -->
-<module xmlns="http://www.osoa.org/xmlns/sca/0.9" xmlns:v="http://www.osoa.org/xmlns/sca/values/0.9"
- name="testModule">
-
- <import.sdo wsdlLocation="wsdl/helloworld.wsdl"/>
- <import.wsdl wsdlLocation="wsdl/helloworld.wsdl"/>
-
- <entryPoint name="HelloWorldService">
- <interface.wsdl interface="http://helloworldaxis.samples.tuscany.apache.org#wsdl.interface(HelloWorldServiceImpl)"/>
- <binding.ws port="http://helloworldaxis.samples.tuscany.apache.org#wsdl.endpoint(HelloWorldServiceImplService/helloworld)"/>
- <reference>HelloWorld/HelloWorldService</reference>
- </entryPoint>
-
- <component name="HelloWorld">
- <implementation.java class="org.apache.tuscany.tomcat.integration.HelloWorldImpl"/>
- </component>
-
-</module>
diff --git a/branches/java-post-M1/sca/tomcat/src/test/resources/app2/WEB-INF/classes/wsdl/helloworld.wsdl b/branches/java-post-M1/sca/tomcat/src/test/resources/app2/WEB-INF/classes/wsdl/helloworld.wsdl
deleted file mode 100644
index 3d299481e5..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/test/resources/app2/WEB-INF/classes/wsdl/helloworld.wsdl
+++ /dev/null
@@ -1,97 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright (c) 2005 The Apache Software Foundation or its licensors, as applicable.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- -->
-<wsdl:definitions targetNamespace="http://helloworldaxis.samples.tuscany.apache.org" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://helloworldaxis.samples.tuscany.apache.org" xmlns:intf="http://helloworldaxis.samples.tuscany.apache.org" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="helloworld">
- <!--WSDL created by Apache Axis version: 1.2.1
-Built on Jun 14, 2005 (09:15:57 EDT)-->
- <wsdl:types>
- <schema elementFormDefault="qualified" targetNamespace="http://helloworldaxis.samples.tuscany.apache.org" xmlns="http://www.w3.org/2001/XMLSchema">
- <element name="getGreetings">
- <complexType>
- <sequence>
- <element name="in0" type="xsd:string"/>
- </sequence>
- </complexType>
- </element>
- <element name="getGreetingsResponse">
- <complexType>
- <sequence>
- <element name="getGreetingsReturn" type="xsd:string"/>
- </sequence>
- </complexType>
- </element>
- </schema>
- </wsdl:types>
-
- <wsdl:message name="getGreetingsRequest">
-
- <wsdl:part element="impl:getGreetings" name="parameters"/>
-
- </wsdl:message>
-
- <wsdl:message name="getGreetingsResponse">
-
- <wsdl:part element="impl:getGreetingsResponse" name="parameters"/>
-
- </wsdl:message>
-
- <wsdl:portType name="HelloWorldServiceImpl">
-
- <wsdl:operation name="getGreetings">
-
- <wsdl:input message="impl:getGreetingsRequest" name="getGreetingsRequest"/>
-
- <wsdl:output message="impl:getGreetingsResponse" name="getGreetingsResponse"/>
-
- </wsdl:operation>
-
- </wsdl:portType>
-
- <wsdl:binding name="helloworldSoapBinding" type="impl:HelloWorldServiceImpl">
-
- <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
-
- <wsdl:operation name="getGreetings">
-
- <wsdlsoap:operation soapAction=""/>
-
- <wsdl:input name="getGreetingsRequest">
-
- <wsdlsoap:body use="literal"/>
-
- </wsdl:input>
-
- <wsdl:output name="getGreetingsResponse">
-
- <wsdlsoap:body use="literal"/>
-
- </wsdl:output>
-
- </wsdl:operation>
-
- </wsdl:binding>
-
- <wsdl:service name="HelloWorldServiceImplService">
-
- <wsdl:port binding="impl:helloworldSoapBinding" name="helloworld">
-
- <wsdlsoap:address location="http://localhost:8080/sample-helloworldws/services/HelloWorldService"/>
-
- </wsdl:port>
-
- </wsdl:service>
-
-</wsdl:definitions>
diff --git a/branches/java-post-M1/sca/tomcat/src/test/resources/app2/WEB-INF/web.xml b/branches/java-post-M1/sca/tomcat/src/test/resources/app2/WEB-INF/web.xml
deleted file mode 100644
index 9bd3882e81..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/test/resources/app2/WEB-INF/web.xml
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE web-app
- PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
- "http://java.sun.com/dtd/web-app_2_3.dtd">
-
-<!--
- * Copyright (c) 2005-2006 The Apache Software Foundation or its licensors, as applicable.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- -->
-<web-app>
- <context-param>
- <param-name>org.apache.tuscany.core.webapp.ModuleComponentName</param-name>
- <param-value>/testContext</param-value>
- </context-param>
- <filter>
- <filter-name>TuscanyFilter</filter-name>
- <filter-class>org.apache.tuscany.core.webapp.TuscanyRequestFilter</filter-class>
- </filter>
- <filter-mapping>
- <filter-name>TuscanyFilter</filter-name>
- <servlet-name>TestServlet</servlet-name>
- </filter-mapping>
- <listener>
- <listener-class>org.apache.tuscany.core.webapp.TuscanyServletListener</listener-class>
- </listener>
- <servlet>
- <servlet-name>TestServlet</servlet-name>
- <servlet-class>org.apache.tuscany.tomcat.integration.TestServlet</servlet-class>
- </servlet>
- <servlet-mapping>
- <servlet-name>TestServlet</servlet-name>
- <url-pattern>/servlet</url-pattern>
- </servlet-mapping>
-</web-app>
diff --git a/branches/java-post-M1/sca/tomcat/src/test/resources/app2/index.html b/branches/java-post-M1/sca/tomcat/src/test/resources/app2/index.html
deleted file mode 100644
index 55ecbd81ba..0000000000
--- a/branches/java-post-M1/sca/tomcat/src/test/resources/app2/index.html
+++ /dev/null
@@ -1,3 +0,0 @@
-<html>
-<body>Hello World</body>
-</html> \ No newline at end of file