You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by da...@apache.org on 2007/02/04 12:10:22 UTC

svn commit: r503384 - in /cocoon/trunk/core: cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/ cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/shielding/...

Author: danielf
Date: Sun Feb  4 03:10:19 2007
New Revision: 503384

URL: http://svn.apache.org/viewvc?view=rev&rev=503384
Log:
Various changes to make the new schema based servlet service configurations work. Introduces the interfaces Mountable and ServletServiceContextAware that are mainly for framework internal use. The samples are updated to use the new configurations. And cocoon-webapp uses the dispatcher form the servlet-service-fw instead of the one from the blocks-fw.

Added:
    cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/Mountable.java   (with props)
    cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/ServletServiceContextAware.java
Modified:
    cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/ServletService.java
    cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/ServletServiceContext.java
    cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/shielding/ShieldingServletService.java
    cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/spring/ServletDecorator.java
    cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/spring/ServletFactoryBean.java
    cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/spring/ServletNamespaceHandler.java
    cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-demo1-servletService.xml
    cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-demo2-servletService.xml
    cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-sample-servletService1.xml
    cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-sample-servletService2.xml
    cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-sample-servletService3.xml
    cocoon/trunk/core/cocoon-webapp/src/main/webapp/WEB-INF/web.xml

Added: cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/Mountable.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/Mountable.java?view=auto&rev=503384
==============================================================================
--- cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/Mountable.java (added)
+++ cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/Mountable.java Sun Feb  4 03:10:19 2007
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.cocoon.servletservice;
+
+/**
+ * Interface for servlet services that are mounted on a specific path.
+ * The inteface is not needed for using the {@link DispatcherServlet}
+ * as it mounts all servlet beans that has a property named mountPath.
+ * The main use for the interface is to b e able to create an AOP mixin
+ * with an ordinary Java proxy.
+ * @version $Id$
+ */
+public interface Mountable {
+    /**
+     * The mount path of the servlet
+     * @return
+     */
+    public String getMountPath();
+}
\ No newline at end of file

Propchange: cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/Mountable.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/Mountable.java
------------------------------------------------------------------------------
    svn:keywords = Id

Modified: cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/ServletService.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/ServletService.java?view=diff&rev=503384&r1=503383&r2=503384
==============================================================================
--- cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/ServletService.java (original)
+++ cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/ServletService.java Sun Feb  4 03:10:19 2007
@@ -45,9 +45,10 @@
  * @version $Id: BlockServlet.java 496060 2007-01-14 11:03:06Z danielf $
  */
 public class ServletService extends HttpServlet
-    implements ApplicationContextAware, ServletContextAware, BeanNameAware, InitializingBean, DisposableBean {
+    implements ApplicationContextAware, ServletContextAware, BeanNameAware,
+    InitializingBean, DisposableBean, ServletServiceContextAware {
     
-    private ServletServiceContext blockContext;
+    private ServletServiceContext servletServiceContext;
     private String embeddedServletClass;
     private Servlet embeddedServlet;
     private ServletContext servletContext;
@@ -55,7 +56,7 @@
     private ApplicationContext parentContainer;
 
     public ServletService() {
-        this.blockContext = new ServletServiceContext();
+        this.servletServiceContext = new ServletServiceContext();
     }
     
     /* (non-Javadoc)
@@ -63,7 +64,7 @@
      */
     public void init(ServletConfig servletConfig) throws ServletException {
         super.init(servletConfig);
-        this.blockContext.setServletContext(servletConfig.getServletContext());
+        this.servletServiceContext.setServletContext(servletConfig.getServletContext());
 
         // create a sub container that resolves paths relative to the block
         // context rather than the parent context and make it available in
@@ -73,13 +74,13 @@
                 WebApplicationContextUtils.getRequiredWebApplicationContext(servletConfig.getServletContext());
         GenericWebApplicationContext container = new GenericWebApplicationContext();
         container.setParent(this.parentContainer);
-        container.setServletContext(this.blockContext);
+        container.setServletContext(this.servletServiceContext);
         container.refresh();
-        this.blockContext.setAttribute(WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE, container);
+        this.servletServiceContext.setAttribute(WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE, container);
 
         // create a servlet config based on the block servlet context
         ServletConfig blockServletConfig =
-            new ServletConfigurationWrapper(servletConfig, this.blockContext) {
+            new ServletConfigurationWrapper(servletConfig, this.servletServiceContext) {
 
                 // FIXME: The context should get the init parameters from the
                 // config rather than the oposite way around.
@@ -95,7 +96,7 @@
         // create and initialize the embeded servlet
         this.embeddedServlet = createEmbeddedServlet(this.embeddedServletClass, blockServletConfig);
         this.embeddedServlet.init(blockServletConfig);
-        this.blockContext.setServlet(this.embeddedServlet);
+        this.servletServiceContext.setServlet(this.embeddedServlet);
     }
     
     /**
@@ -118,7 +119,7 @@
     protected void service(HttpServletRequest request, HttpServletResponse response)
     throws ServletException, IOException {
         RequestDispatcher dispatcher =
-            this.blockContext.getRequestDispatcher(request.getPathInfo());
+            this.servletServiceContext.getRequestDispatcher(request.getPathInfo());
         dispatcher.forward(request, response);
     }
 
@@ -128,10 +129,10 @@
     }
     
     /**
-     * @return the blockContext
+     * @return the servletServiceContext
      */
-    public ServletServiceContext getBlockContext() {
-        return this.blockContext;
+    public ServletContext getServletServiceContext() {
+        return this.servletServiceContext;
     }
     
     public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
@@ -147,11 +148,11 @@
     }
 
     public void setMountPath(String mountPath) {
-        this.blockContext.setMountPath(mountPath);        
+        this.servletServiceContext.setMountPath(mountPath);        
     }
     
     public String getMountPath() {
-        return this.blockContext.getMountPath();
+        return this.servletServiceContext.getMountPath();
     }
     
     /**
@@ -162,7 +163,7 @@
     // FIXME: would like to throw an exeption if the form of the url is faulty,
     // what is the prefered way of handling faulty properties in Spring?
     public void setBlockContextURL(String blockContextURL) {
-        this.blockContext.setContextPath(blockContextURL);
+        this.servletServiceContext.setContextPath(blockContextURL);
     }
 
     public void setServletClass(String servletClass) {
@@ -170,11 +171,11 @@
     }
 
     public void setProperties(Map properties) {
-        this.blockContext.setInitParams(properties);
+        this.servletServiceContext.setInitParams(properties);
     }
     
     public void setConnections(Map connections) {
-        this.blockContext.setConnections(connections);
+        this.servletServiceContext.setConnections(connections);
     }
 
     public void afterPropertiesSet() throws Exception {

Modified: cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/ServletServiceContext.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/ServletServiceContext.java?view=diff&rev=503384&r1=503383&r2=503384
==============================================================================
--- cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/ServletServiceContext.java (original)
+++ cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/ServletServiceContext.java Sun Feb  4 03:10:19 2007
@@ -109,7 +109,8 @@
      * @param map the attributes to set
      */
     public void setAttributes(Map map) {
-        this.attributes = map;
+        if (map != null)
+            this.attributes = map;
     }
 
     /*
@@ -394,9 +395,9 @@
             return null;
         }
         
-        ServletService servletService =
-            (ServletService) this.connections.get(name);
-        return servletService != null ? servletService.getBlockContext() : null;
+        Servlet servlet =
+            (Servlet) this.connections.get(name);
+        return servlet != null ? ((ServletServiceContextAware)servlet).getServletServiceContext() : null;
     }
         
     /**

Added: cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/ServletServiceContextAware.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/ServletServiceContextAware.java?view=auto&rev=503384
==============================================================================
--- cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/ServletServiceContextAware.java (added)
+++ cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/ServletServiceContextAware.java Sun Feb  4 03:10:19 2007
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.cocoon.servletservice;
+
+import javax.servlet.ServletContext;
+
+/**
+ * Inteface for making the servlet service context of a servlet service
+ * available. It is needed for inter servlet communication in the servlet
+ * service framework. It is normaly introduced by an AOP mixin.
+ * 
+ * @version $Id$
+ */
+public interface ServletServiceContextAware {
+    /**
+     * The servlet context used for inter servlet service communication
+     * @return
+     */
+    public ServletContext getServletServiceContext();
+}
\ No newline at end of file

Modified: cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/shielding/ShieldingServletService.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/shielding/ShieldingServletService.java?view=diff&rev=503384&r1=503383&r2=503384
==============================================================================
--- cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/shielding/ShieldingServletService.java (original)
+++ cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/shielding/ShieldingServletService.java Sun Feb  4 03:10:19 2007
@@ -92,7 +92,7 @@
                 this.classLoaderFactory);
         
         this.classLoader = 
-            ShieldedGroupClassLoaderManager.getClassLoader(getBlockContext(), parameters);
+            ShieldedGroupClassLoaderManager.getClassLoader(getServletServiceContext(), parameters);
 
         // Create the servlet
         final ClassLoader oldClassLoader = Thread.currentThread().getContextClassLoader();

Modified: cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/spring/ServletDecorator.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/spring/ServletDecorator.java?view=diff&rev=503384&r1=503383&r2=503384
==============================================================================
--- cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/spring/ServletDecorator.java (original)
+++ cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/spring/ServletDecorator.java Sun Feb  4 03:10:19 2007
@@ -40,8 +40,7 @@
      */
     public BeanDefinitionHolder decorate(Node source, BeanDefinitionHolder holder, ParserContext ctx) {
         String embeddedServletBeanName = registerEmbeddedServletBean(holder, ctx);
-        registerServletFactoryBean((Element) source, holder, ctx, embeddedServletBeanName);
-        return holder;
+        return createServletFactoryBeanDefinition((Element) source, holder, ctx, embeddedServletBeanName);
     }
 
     private String registerEmbeddedServletBean(BeanDefinitionHolder holder, ParserContext ctx) {
@@ -53,13 +52,14 @@
         return beanName;
     }
 
-    private void registerServletFactoryBean(Element source, BeanDefinitionHolder holder, ParserContext ctx, String embeddedServletBeanName) {
+    private BeanDefinitionHolder createServletFactoryBeanDefinition(Element source, BeanDefinitionHolder holder, ParserContext ctx, String embeddedServletBeanName) {
+        String ns = source.getNamespaceURI();
         String mountPath = source.hasAttribute("mount-path") ? source.getAttribute("mount-path") : null;
         String contextPath = source.hasAttribute("context-path") ? source.getAttribute("context-path") : null;
         
-        Element initParamsElem = (Element) source.getElementsByTagName("init-params").item(0);
-        Element contextParamsElem = (Element) source.getElementsByTagName("context-params").item(0);
-        Element connectionsElem = (Element) source.getElementsByTagName("connections").item(0);
+        Element initParamsElem = (Element) source.getElementsByTagNameNS(ns, "init-params").item(0);
+        Element contextParamsElem = (Element) source.getElementsByTagNameNS(ns, "context-params").item(0);
+        Element connectionsElem = (Element) source.getElementsByTagNameNS(ns, "connections").item(0);
         
         BeanDefinitionBuilder servletFactoryDefBuilder = BeanDefinitionBuilder.rootBeanDefinition(ServletFactoryBean.class);
         servletFactoryDefBuilder.setSource(ctx.extractSource(source));
@@ -83,6 +83,6 @@
             servletFactoryDefBuilder.addPropertyValue("connections", connections);
         }
 
-        ctx.getRegistry().registerBeanDefinition(holder.getBeanName(), servletFactoryDefBuilder.getBeanDefinition());
+        return new BeanDefinitionHolder(servletFactoryDefBuilder.getBeanDefinition(), holder.getBeanName());
     }
 }

Modified: cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/spring/ServletFactoryBean.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/spring/ServletFactoryBean.java?view=diff&rev=503384&r1=503383&r2=503384
==============================================================================
--- cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/spring/ServletFactoryBean.java (original)
+++ cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/spring/ServletFactoryBean.java Sun Feb  4 03:10:19 2007
@@ -28,8 +28,11 @@
 
 import org.aopalliance.intercept.MethodInterceptor;
 import org.aopalliance.intercept.MethodInvocation;
+import org.apache.cocoon.servletservice.Mountable;
 import org.apache.cocoon.servletservice.ServletServiceContext;
+import org.apache.cocoon.servletservice.ServletServiceContextAware;
 import org.springframework.aop.framework.ProxyFactory;
+import org.springframework.aop.support.DefaultIntroductionAdvisor;
 import org.springframework.aop.support.DelegatingIntroductionInterceptor;
 import org.springframework.beans.BeansException;
 import org.springframework.beans.factory.BeanNameAware;
@@ -61,7 +64,7 @@
     private Map connections;
     
     private ServletServiceContext servletServiceContext;
-
+    
     public ServletFactoryBean() {
     }
     
@@ -184,21 +187,16 @@
         this.connections = connections;
     }
 
-    /**
-     * @return the blockContext
-     */
-    public ServletServiceContext getServletServiceContext() {
-        return this.servletServiceContext;
-    }
-
     /* (non-Javadoc)
      * @see org.springframework.beans.factory.FactoryBean#getObject()
      */
     public Object getObject() throws Exception {
         ProxyFactory proxyFactory = new ProxyFactory(this.embeddedServlet);
         proxyFactory.addAdvice(new ServiceInterceptor());
-        if (this.mountPath != null)
-            proxyFactory.addAdvice(new MountableIntroducer());
+        if (this.mountPath != null) {
+            proxyFactory.addAdvisor(new MountableMixinAdvisor());
+        }
+        proxyFactory.addAdvisor(new ServletServiceContextMixinAdvisor());
         return proxyFactory.getProxy();
     }
 
@@ -236,14 +234,33 @@
         
     }
     
-    public interface Mountable {
-        public String getMountPath();
-    }
-    
-    private class MountableIntroducer extends DelegatingIntroductionInterceptor implements Mountable {
+    private class MountableMixin extends DelegatingIntroductionInterceptor implements Mountable {
 
         public String getMountPath() {
             return ServletFactoryBean.this.mountPath;
         }
+    }
+    
+    private class MountableMixinAdvisor extends DefaultIntroductionAdvisor {
+
+        public MountableMixinAdvisor() {
+            super(new MountableMixin(), Mountable.class);
+        }
+    }
+    
+    private class ServletServiceContextMixin extends DelegatingIntroductionInterceptor
+    implements ServletServiceContextAware {
+
+        public ServletContext getServletServiceContext() {
+            return ServletFactoryBean.this.servletServiceContext;
+        }
+    }
+    
+    private class ServletServiceContextMixinAdvisor extends DefaultIntroductionAdvisor {
+
+        public ServletServiceContextMixinAdvisor() {
+            super(new ServletServiceContextMixin(), ServletServiceContextAware.class);
+        }
+        
     }
 }

Modified: cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/spring/ServletNamespaceHandler.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/spring/ServletNamespaceHandler.java?view=diff&rev=503384&r1=503383&r2=503384
==============================================================================
--- cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/spring/ServletNamespaceHandler.java (original)
+++ cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-impl/src/main/java/org/apache/cocoon/servletservice/spring/ServletNamespaceHandler.java Sun Feb  4 03:10:19 2007
@@ -37,7 +37,7 @@
      * @see org.springframework.beans.factory.xml.NamespaceHandler#init()
      */
     public void init() {
-        this.registerBeanDefinitionDecorator("servlet", new ServletDecorator());
+        this.registerBeanDefinitionDecorator("context", new ServletDecorator());
     }
 
 }

Modified: cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-demo1-servletService.xml
URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-demo1-servletService.xml?view=diff&rev=503384&r1=503383&r2=503384
==============================================================================
--- cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-demo1-servletService.xml (original)
+++ cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-demo1-servletService.xml Sun Feb  4 03:10:19 2007
@@ -19,19 +19,18 @@
 <!-- @version $Id$ -->
 <beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
-	<bean id="org.apache.cocoon.servletervice.demo1.servlet" class="org.apache.cocoon.servletservice.ServletService">
-		<property name="mountPath" value="/test1"/>
-		<property name="servletClass" value="org.apache.cocoon.servletservice.demo1.DemoServlet"/>
-		<property name="properties">
-			<map>
+       xmlns:servlet="http://cocoon.apache.org/schema/servlet"
+       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
+                           http://cocoon.apache.org/schema/servlet http://cocoon.apache.org/schema/servlet/cocoon-servlet-1.0.xsd">
+
+	<bean id="org.apache.cocoon.servletservice.demo1.servlet" class="org.apache.cocoon.servletservice.demo1.DemoServlet">
+    	<servlet:context mount-path="/test1">
+    		<servlet:init-params>
 				<entry key="foo" value="baz"/>
-			</map>
-		</property>
-		<property name="connections">
-			<map>
+			</servlet:init-params>
+			<servlet:connections>
 				<entry key="demo2" value-ref="org.apache.cocoon.servletservice.demo2.servlet"/>
-			</map>
-		</property>
+			</servlet:connections>
+		</servlet:context>
 	</bean>
 </beans>

Modified: cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-demo2-servletService.xml
URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-demo2-servletService.xml?view=diff&rev=503384&r1=503383&r2=503384
==============================================================================
--- cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-demo2-servletService.xml (original)
+++ cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-demo2-servletService.xml Sun Feb  4 03:10:19 2007
@@ -19,9 +19,11 @@
 <!-- @version $Id$ -->
 <beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
-  <bean id="org.apache.cocoon.servletservice.demo2.servlet" class="org.apache.cocoon.servletservice.ServletService">
-    <property name="mountPath" value="/test2"/>
-    <property name="servletClass" value="org.apache.cocoon.servletservice.demo2.DemoServlet"/>
-  </bean>
+       xmlns:servlet="http://cocoon.apache.org/schema/servlet"
+       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
+                           http://cocoon.apache.org/schema/servlet http://cocoon.apache.org/schema/servlet/cocoon-servlet-1.0.xsd">
+
+  <bean id="org.apache.cocoon.servletservice.demo2.servlet" class="org.apache.cocoon.servletservice.demo2.DemoServlet">
+    <servlet:context mount-path="/test2"/>
+  </bean>  
 </beans>

Modified: cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-sample-servletService1.xml
URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-sample-servletService1.xml?view=diff&rev=503384&r1=503383&r2=503384
==============================================================================
--- cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-sample-servletService1.xml (original)
+++ cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-sample-servletService1.xml Sun Feb  4 03:10:19 2007
@@ -19,20 +19,18 @@
 <!-- @version $Id$ -->
 <beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
-	<bean id="org.apache.cocoon.servletservice.sample.servlet1" class="org.apache.cocoon.servletservice.ServletService">
-		<property name="mountPath" value="/cocoon-servlet-service-sample1"/>
-		<property name="servletClass" value="org.apache.cocoon.sitemap.SitemapServlet"/>
-		<property name="blockContextURL" value="blockcontext:/cocoon-servlet-service-sample/test1"/>
-		<property name="properties">
-			<map>
+       xmlns:servlet="http://cocoon.apache.org/schema/servlet"
+       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
+                           http://cocoon.apache.org/schema/servlet http://cocoon.apache.org/schema/servlet/cocoon-servlet-1.0.xsd">
+
+	<bean id="org.apache.cocoon.servletservice.sample.servlet1" class="org.apache.cocoon.sitemap.SitemapServlet">
+    	<servlet:context mount-path="/cocoon-servlet-service-sample1" context-path="blockcontext:/cocoon-servlet-service-sample/test1">
+    		<servlet:init-params>
 				<entry key="foo" value="bar"/>
-			</map>
-		</property>
-		<property name="connections">
-			<map>
+			</servlet:init-params>
+			<servlet:connections>
 				<entry key="test2" value-ref="org.apache.cocoon.servletservice.sample.servlet2"/>
-			</map>
-		</property>
+			</servlet:connections>
+		</servlet:context>
 	</bean>
 </beans>

Modified: cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-sample-servletService2.xml
URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-sample-servletService2.xml?view=diff&rev=503384&r1=503383&r2=503384
==============================================================================
--- cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-sample-servletService2.xml (original)
+++ cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-sample-servletService2.xml Sun Feb  4 03:10:19 2007
@@ -19,10 +19,11 @@
 <!-- @version $Id$ -->
 <beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
-	<bean id="org.apache.cocoon.servletservice.sample.servlet2" class="org.apache.cocoon.servletservice.ServletService">
-		<property name="mountPath" value="/cocoon-servlet-service-sample2"/>
-		<property name="servletClass" value="org.apache.cocoon.sitemap.SitemapServlet"/>
-		<property name="blockContextURL" value="blockcontext:/cocoon-servlet-service-sample/test2"/>
+       xmlns:servlet="http://cocoon.apache.org/schema/servlet"
+       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
+                           http://cocoon.apache.org/schema/servlet http://cocoon.apache.org/schema/servlet/cocoon-servlet-1.0.xsd">
+
+	<bean id="org.apache.cocoon.servletservice.sample.servlet2" class="org.apache.cocoon.sitemap.SitemapServlet">
+    	<servlet:context mount-path="/cocoon-servlet-service-sample2" context-path="blockcontext:/cocoon-servlet-service-sample/test2"/>
 	</bean>
 </beans>

Modified: cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-sample-servletService3.xml
URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-sample-servletService3.xml?view=diff&rev=503384&r1=503383&r2=503384
==============================================================================
--- cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-sample-servletService3.xml (original)
+++ cocoon/trunk/core/cocoon-servlet-service/cocoon-servlet-service-sample/src/main/resources/META-INF/cocoon/spring/cocoon-servlet-service-sample-servletService3.xml Sun Feb  4 03:10:19 2007
@@ -19,21 +19,20 @@
 <!-- @version $Id$ -->
 <beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
-	<bean id="org.apache.cocoon.servletservice.sample.servlet3" class="org.apache.cocoon.servletservice.ServletService">
-		<property name="mountPath" value="/cocoon-servlet-service-sample3"/>
-		<property name="servletClass" value="org.apache.cocoon.sitemap.SitemapServlet"/>
-		<property name="blockContextURL" value="blockcontext:/cocoon-servlet-service-sample/test3"/>
-		<property name="properties">
-			<map>
+       xmlns:servlet="http://cocoon.apache.org/schema/servlet"
+       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
+                           http://cocoon.apache.org/schema/servlet http://cocoon.apache.org/schema/servlet/cocoon-servlet-1.0.xsd">
+
+
+	<bean id="org.apache.cocoon.servletservice.sample.servlet3" class="org.apache.cocoon.sitemap.SitemapServlet">
+    	<servlet:context mount-path="/cocoon-servlet-service-sample3" context-path="blockcontext:/cocoon-servlet-service-sample/test3">
+    		<servlet:init-params>
 				<entry key="bar" value="gazonk"/>
 				<entry key="baz" value="blah"/>
-			</map>
-		</property>
-		<property name="connections">
-			<map>
+			</servlet:init-params>
+			<servlet:connections>
 				<entry key="super" value-ref="org.apache.cocoon.servletservice.sample.servlet1"/>
-			</map>
-		</property>
+			</servlet:connections>
+		</servlet:context>
 	</bean>
 </beans>

Modified: cocoon/trunk/core/cocoon-webapp/src/main/webapp/WEB-INF/web.xml
URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-webapp/src/main/webapp/WEB-INF/web.xml?view=diff&rev=503384&r1=503383&r2=503384
==============================================================================
--- cocoon/trunk/core/cocoon-webapp/src/main/webapp/WEB-INF/web.xml (original)
+++ cocoon/trunk/core/cocoon-webapp/src/main/webapp/WEB-INF/web.xml Sun Feb  4 03:10:19 2007
@@ -122,7 +122,7 @@
     <display-name>DispatcherServlet</display-name>
     <servlet-name>DispatcherServlet</servlet-name>
 
-    <servlet-class>org.apache.cocoon.blocks.DispatcherServlet</servlet-class>
+    <servlet-class>org.apache.cocoon.servletservice.DispatcherServlet</servlet-class>
 
     <!--
       This parameter allows you to startup immediately after startup