You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tiles.apache.org by ap...@apache.org on 2009/11/22 14:57:14 UTC

svn commit: r883078 [4/5] - in /tiles/sandbox/trunk/tiles3: tiles-api/src/main/java/org/apache/tiles/access/ tiles-api/src/test/java/org/apache/tiles/access/ tiles-core/src/main/java/org/apache/tiles/startup/ tiles-core/src/test/java/org/apache/tiles/s...

Modified: tiles/sandbox/trunk/tiles3/tiles-template/src/test/java/org/apache/tiles/template/PutAttributeModelTest.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-template/src/test/java/org/apache/tiles/template/PutAttributeModelTest.java?rev=883078&r1=883077&r2=883078&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-template/src/test/java/org/apache/tiles/template/PutAttributeModelTest.java (original)
+++ tiles/sandbox/trunk/tiles3/tiles-template/src/test/java/org/apache/tiles/template/PutAttributeModelTest.java Sun Nov 22 13:57:09 2009
@@ -33,6 +33,8 @@
 import org.apache.tiles.AttributeContext;
 import org.apache.tiles.ListAttribute;
 import org.apache.tiles.TilesContainer;
+import org.apache.tiles.access.TilesAccess;
+import org.apache.tiles.request.ApplicationContext;
 import org.apache.tiles.request.Request;
 import org.junit.Before;
 import org.junit.Test;
@@ -77,8 +79,8 @@
 
     /**
      * Test method for {@link org.apache.tiles.template.PutAttributeModel
-     * #end(org.apache.tiles.TilesContainer, String, Object, String, String,
-     * String, String, boolean, Request)}.
+     * #end(String, Object, String, String, String,
+     * String, boolean, Request)}.
      */
     @Test
     public void testEnd() {
@@ -90,26 +92,29 @@
         composeStack.push(attribute);
         Map<String, Object> requestScope = new HashMap<String, Object>();
         requestScope.put(ComposeStackUtil.COMPOSE_STACK_ATTRIBUTE_NAME, composeStack);
+        requestScope.put(TilesAccess.CURRENT_CONTAINER_ATTRIBUTE_NAME, container);
+        ApplicationContext applicationContext = createMock(ApplicationContext.class);
 
-        expect(request.getRequestScope()).andReturn(requestScope);
+        expect(request.getApplicationContext()).andReturn(applicationContext);
+        expect(request.getRequestScope()).andReturn(requestScope).anyTimes();
         expect(container.getAttributeContext(request)).andReturn(attributeContext);
         attributeContext.putAttribute("myName", attribute, false);
 
-        replay(container, attributeContext, request);
-        model.end(container, "myName", "myValue", "myExpression", "myBody",
-                "myRole", "myType", false, request);
+        replay(container, attributeContext, request, applicationContext);
+        model.end("myName", "myValue", "myExpression", "myBody", "myRole",
+                "myType", false, request);
         assertEquals("myValue", attribute.getValue());
         assertEquals("myExpression", attribute.getExpressionObject()
                 .getExpression());
         assertEquals("myRole", attribute.getRole());
         assertEquals("myType", attribute.getRenderer());
-        verify(container, attributeContext, request);
+        verify(container, attributeContext, request, applicationContext);
     }
 
     /**
      * Test method for {@link org.apache.tiles.template.PutAttributeModel
-     * #end(org.apache.tiles.TilesContainer, String, Object, String, String,
-     * String, String, boolean, Request)}.
+     * #end(String, Object, String, String, String,
+     * String, boolean, Request)}.
      */
     @Test
     public void testEndBody() {
@@ -121,26 +126,29 @@
         composeStack.push(attribute);
         Map<String, Object> requestScope = new HashMap<String, Object>();
         requestScope.put(ComposeStackUtil.COMPOSE_STACK_ATTRIBUTE_NAME, composeStack);
+        requestScope.put(TilesAccess.CURRENT_CONTAINER_ATTRIBUTE_NAME, container);
+        ApplicationContext applicationContext = createMock(ApplicationContext.class);
 
-        expect(request.getRequestScope()).andReturn(requestScope);
+        expect(request.getApplicationContext()).andReturn(applicationContext);
+        expect(request.getRequestScope()).andReturn(requestScope).anyTimes();
         expect(container.getAttributeContext(request)).andReturn(attributeContext);
         attributeContext.putAttribute("myName", attribute, false);
 
-        replay(container, attributeContext, request);
-        model.end(container, "myName", "myValue", "myExpression", "myBody",
-                "myRole", "myType", false, request);
+        replay(container, attributeContext, request, applicationContext);
+        model.end("myName", "myValue", "myExpression", "myBody", "myRole",
+                "myType", false, request);
         assertEquals("myValue", attribute.getValue());
         assertEquals("myExpression", attribute.getExpressionObject()
                 .getExpression());
         assertEquals("myRole", attribute.getRole());
         assertEquals("myType", attribute.getRenderer());
-        verify(container, attributeContext, request);
+        verify(container, attributeContext, request, applicationContext);
     }
 
     /**
      * Test method for {@link org.apache.tiles.template.PutAttributeModel
-     * #execute(org.apache.tiles.TilesContainer, String, Object, String, String,
-     * String, String, boolean, Request)}.
+     * #execute(String, Object, String, String, String,
+     * String, boolean, Request)}.
      */
     @Test
     public void testExecuteListAttribute() {
@@ -152,14 +160,17 @@
         composeStack.push(listAttribute);
         Map<String, Object> requestScope = new HashMap<String, Object>();
         requestScope.put(ComposeStackUtil.COMPOSE_STACK_ATTRIBUTE_NAME, composeStack);
+        requestScope.put(TilesAccess.CURRENT_CONTAINER_ATTRIBUTE_NAME, container);
+        ApplicationContext applicationContext = createMock(ApplicationContext.class);
 
-        expect(request.getRequestScope()).andReturn(requestScope);
+        expect(request.getApplicationContext()).andReturn(applicationContext);
+        expect(request.getRequestScope()).andReturn(requestScope).anyTimes();
         expect(container.getAttributeContext(request)).andReturn(attributeContext);
         attributeContext.putAttribute(eq("myName"), (Attribute) notNull(), eq(false));
 
-        replay(container, attributeContext, request);
-        model.execute(container, "myName", "myValue", "myExpression",
-                "myBody", "myRole", "myType", false, request);
-        verify(container, attributeContext, request);
+        replay(container, attributeContext, request, applicationContext);
+        model.execute("myName", "myValue", "myExpression", "myBody",
+                "myRole", "myType", false, request);
+        verify(container, attributeContext, request, applicationContext);
     }
 }

Modified: tiles/sandbox/trunk/tiles3/tiles-template/src/test/java/org/apache/tiles/template/PutListAttributeModelTest.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-template/src/test/java/org/apache/tiles/template/PutListAttributeModelTest.java?rev=883078&r1=883077&r2=883078&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-template/src/test/java/org/apache/tiles/template/PutListAttributeModelTest.java (original)
+++ tiles/sandbox/trunk/tiles3/tiles-template/src/test/java/org/apache/tiles/template/PutListAttributeModelTest.java Sun Nov 22 13:57:09 2009
@@ -32,6 +32,8 @@
 import org.apache.tiles.AttributeContext;
 import org.apache.tiles.ListAttribute;
 import org.apache.tiles.TilesContainer;
+import org.apache.tiles.access.TilesAccess;
+import org.apache.tiles.request.ApplicationContext;
 import org.apache.tiles.request.Request;
 import org.junit.Before;
 import org.junit.Test;
@@ -78,7 +80,7 @@
 
     /**
      * Test method for {@link org.apache.tiles.template.PutListAttributeModel
-     * #end(org.apache.tiles.TilesContainer, String, boolean, Request)}.
+     * #end(String, boolean, Request)}.
      */
     @Test
     public void testEnd() {
@@ -90,13 +92,16 @@
         composeStack.push(listAttribute);
         Map<String, Object> requestScope = new HashMap<String, Object>();
         requestScope.put(ComposeStackUtil.COMPOSE_STACK_ATTRIBUTE_NAME, composeStack);
+        requestScope.put(TilesAccess.CURRENT_CONTAINER_ATTRIBUTE_NAME, container);
+        ApplicationContext applicationContext = createMock(ApplicationContext.class);
 
-        expect(request.getRequestScope()).andReturn(requestScope);
+        expect(request.getApplicationContext()).andReturn(applicationContext);
+        expect(request.getRequestScope()).andReturn(requestScope).anyTimes();
         expect(container.getAttributeContext(request)).andReturn(attributeContext);
         attributeContext.putAttribute("myName", listAttribute, false);
 
         replay(container, attributeContext, request);
-        model.end(container, "myName", false, request);
+        model.end("myName", false, request);
         assertEquals(0, composeStack.size());
         verify(container, attributeContext, request);
     }

Added: tiles/sandbox/trunk/tiles3/tiles-template/src/test/java/org/apache/tiles/template/SetCurrentContainerModelTest.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-template/src/test/java/org/apache/tiles/template/SetCurrentContainerModelTest.java?rev=883078&view=auto
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-template/src/test/java/org/apache/tiles/template/SetCurrentContainerModelTest.java (added)
+++ tiles/sandbox/trunk/tiles3/tiles-template/src/test/java/org/apache/tiles/template/SetCurrentContainerModelTest.java Sun Nov 22 13:57:09 2009
@@ -0,0 +1,68 @@
+/**
+ *
+ */
+package org.apache.tiles.template;
+
+import static org.easymock.EasyMock.*;
+import static org.junit.Assert.*;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.tiles.NoSuchContainerException;
+import org.apache.tiles.TilesContainer;
+import org.apache.tiles.access.TilesAccess;
+import org.apache.tiles.request.ApplicationContext;
+import org.apache.tiles.request.Request;
+import org.junit.Test;
+
+/**
+ * Tests {@link SetCurrentContainerModel}.
+ *
+ * @version $Rev$ $Date$
+ */
+public class SetCurrentContainerModelTest {
+
+    /**
+     * Test method for {@link org.apache.tiles.template.SetCurrentContainerModel#execute(java.lang.String, org.apache.tiles.request.Request)}.
+     */
+    @Test
+    public void testSetCurrentContainer() {
+        Request request = createMock(Request.class);
+        ApplicationContext context = createMock(ApplicationContext.class);
+        TilesContainer container = createMock(TilesContainer.class);
+        Map<String, Object> attribs = new HashMap<String, Object>();
+        attribs.put("myKey", container);
+        Map<String, Object> requestScope = new HashMap<String, Object>();
+
+        expect(context.getApplicationScope()).andReturn(attribs).anyTimes();
+        expect(request.getRequestScope()).andReturn(requestScope);
+        expect(request.getApplicationContext()).andReturn(context);
+        replay(request, context, container);
+        SetCurrentContainerModel model = new SetCurrentContainerModel();
+        model.execute("myKey", request);
+        assertEquals(container, requestScope.get(TilesAccess.CURRENT_CONTAINER_ATTRIBUTE_NAME));
+        verify(request, context, container);
+    }
+
+    /**
+     * Test method for {@link org.apache.tiles.template.SetCurrentContainerModel#execute(java.lang.String, org.apache.tiles.request.Request)}.
+     */
+    @Test(expected=NoSuchContainerException.class)
+    public void testSetCurrentContainerException() {
+        Request request = createMock(Request.class);
+        ApplicationContext context = createMock(ApplicationContext.class);
+        Map<String, Object> attribs = new HashMap<String, Object>();
+
+        expect(request.getApplicationContext()).andReturn(context);
+        expect(context.getApplicationScope()).andReturn(attribs).anyTimes();
+        replay(request, context);
+        try {
+            SetCurrentContainerModel model = new SetCurrentContainerModel();
+            model.execute("myKey", request);
+        } finally {
+            verify(request, context);
+        }
+    }
+
+}

Propchange: tiles/sandbox/trunk/tiles3/tiles-template/src/test/java/org/apache/tiles/template/SetCurrentContainerModelTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tiles/sandbox/trunk/tiles3/tiles-template/src/test/java/org/apache/tiles/template/SetCurrentContainerModelTest.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Modified: tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/main/java/org/apache/tiles/test/servlet/SelectLocaleServlet.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/main/java/org/apache/tiles/test/servlet/SelectLocaleServlet.java?rev=883078&r1=883077&r2=883078&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/main/java/org/apache/tiles/test/servlet/SelectLocaleServlet.java (original)
+++ tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/main/java/org/apache/tiles/test/servlet/SelectLocaleServlet.java Sun Nov 22 13:57:09 2009
@@ -20,7 +20,6 @@
  */
 package org.apache.tiles.test.servlet;
 
-import java.io.IOException;
 import java.util.Locale;
 
 import javax.servlet.ServletConfig;
@@ -31,10 +30,11 @@
 import javax.servlet.http.HttpSession;
 
 import org.apache.tiles.TilesContainer;
+import org.apache.tiles.access.TilesAccess;
 import org.apache.tiles.locale.impl.DefaultLocaleResolver;
+import org.apache.tiles.request.ApplicationContext;
 import org.apache.tiles.request.Request;
 import org.apache.tiles.request.servlet.ServletTilesRequestContext;
-import org.apache.tiles.servlet.context.ServletUtil;
 
 /**
  * Servlet able to let a user choose a locale.
@@ -66,14 +66,14 @@
     /** {@inheritDoc} */
     @Override
     protected void doGet(HttpServletRequest request,
-            HttpServletResponse response) throws ServletException, IOException {
+            HttpServletResponse response) {
         process(request, response);
     }
 
     /** {@inheritDoc} */
     @Override
     protected void doPost(HttpServletRequest request,
-            HttpServletResponse response) throws ServletException, IOException {
+            HttpServletResponse response) {
         process(request, response);
     }
 
@@ -82,13 +82,9 @@
      *
      * @param request The request object.
      * @param response The response object.
-     * @throws ServletException If something goes wrong when rendering
-     * <code>test.localized.definition</code> definition.
-     * @throws IOException It will be never thrown, it is there only for API
-     * compatibility.
      */
     private void process(HttpServletRequest request,
-            HttpServletResponse response) throws ServletException, IOException {
+            HttpServletResponse response) {
         String localeParameter = request.getParameter("locale");
         HttpSession session = request.getSession();
         Locale locale = null;
@@ -103,12 +99,11 @@
             }
         }
         session.setAttribute(DefaultLocaleResolver.LOCALE_KEY, locale);
-        ServletUtil.setCurrentContainer(request, request
-                .getSession().getServletContext(), containerKey);
-        TilesContainer container = ServletUtil.getCurrentContainer(request, request
-                .getSession().getServletContext());
-		Request currentRequest = new ServletTilesRequestContext(container
-				.getApplicationContext(), request, response);
+        ApplicationContext applicationContext = org.apache.tiles.request.servlet.ServletUtil
+                .getApplicationContext(getServletContext());
+        Request currentRequest = new ServletTilesRequestContext(applicationContext, request, response);
+        TilesAccess.setCurrentContainer(currentRequest, containerKey);
+        TilesContainer container = TilesAccess.getCurrentContainer(currentRequest);
         container.render(definitionName, currentRequest);
     }
 }

Modified: tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/AddAttributeVModel.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/AddAttributeVModel.java?rev=883078&r1=883077&r2=883078&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/AddAttributeVModel.java (original)
+++ tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/AddAttributeVModel.java Sun Nov 22 13:57:09 2009
@@ -27,9 +27,8 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
-import org.apache.tiles.TilesContainer;
 import org.apache.tiles.request.Request;
-import org.apache.tiles.servlet.context.ServletUtil;
+import org.apache.tiles.request.servlet.ServletUtil;
 import org.apache.tiles.template.AddAttributeModel;
 import org.apache.tiles.velocity.context.VelocityTilesRequestContext;
 import org.apache.tiles.velocity.context.VelocityUtil;
@@ -73,12 +72,10 @@
     public Renderable execute(HttpServletRequest request,
             HttpServletResponse response, Context velocityContext,
             Map<String, Object> params) {
-        TilesContainer container = ServletUtil.getCurrentContainer(
-                request, servletContext);
         Request currentRequest = VelocityTilesRequestContext
-                .createVelocityRequest(container
-                        .getApplicationContext(), request, response,
-                        velocityContext, null);
+                .createVelocityRequest(ServletUtil
+                        .getApplicationContext(servletContext), request,
+                        response, velocityContext, null);
         model.execute(params.get("value"),
                 (String) params.get("expression"), null, (String) params.get("role"),
                 (String) params.get("type"), currentRequest);
@@ -90,12 +87,10 @@
             Context velocityContext) {
         Map<String, Object> params = VelocityUtil.getParameterStack(
                 velocityContext).pop();
-        TilesContainer container = ServletUtil.getCurrentContainer(
-                request, servletContext);
         Request currentRequest = VelocityTilesRequestContext
-                .createVelocityRequest(container
-                        .getApplicationContext(), request, response,
-                        velocityContext, null);
+                .createVelocityRequest(ServletUtil
+                        .getApplicationContext(servletContext), request,
+                        response, velocityContext, null);
         model.end(params.get("value"), (String) params.get("expression"),
                 null, (String) params
                         .get("role"), (String) params.get("type"), currentRequest);
@@ -106,12 +101,10 @@
     public void start(HttpServletRequest request, HttpServletResponse response,
             Context velocityContext, Map<String, Object> params) {
         VelocityUtil.getParameterStack(velocityContext).push(params);
-        TilesContainer container = ServletUtil.getCurrentContainer(
-                request, servletContext);
         Request currentRequest = VelocityTilesRequestContext
-                .createVelocityRequest(container
-                        .getApplicationContext(), request, response,
-                        velocityContext, null);
+                .createVelocityRequest(ServletUtil
+                        .getApplicationContext(servletContext), request,
+                        response, velocityContext, null);
         model.start(currentRequest);
     }
 }

Modified: tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/AddListAttributeVModel.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/AddListAttributeVModel.java?rev=883078&r1=883077&r2=883078&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/AddListAttributeVModel.java (original)
+++ tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/AddListAttributeVModel.java Sun Nov 22 13:57:09 2009
@@ -27,9 +27,8 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
-import org.apache.tiles.TilesContainer;
 import org.apache.tiles.request.Request;
-import org.apache.tiles.servlet.context.ServletUtil;
+import org.apache.tiles.request.servlet.ServletUtil;
 import org.apache.tiles.template.AddListAttributeModel;
 import org.apache.tiles.velocity.context.VelocityTilesRequestContext;
 import org.apache.tiles.velocity.context.VelocityUtil;
@@ -72,12 +71,10 @@
     /** {@inheritDoc} */
     public Renderable end(HttpServletRequest request, HttpServletResponse response,
             Context velocityContext) {
-        TilesContainer container = ServletUtil.getCurrentContainer(
-                request, servletContext);
         Request currentRequest = VelocityTilesRequestContext
-                .createVelocityRequest(container
-                        .getApplicationContext(), request, response,
-                        velocityContext, null);
+            .createVelocityRequest(ServletUtil
+                    .getApplicationContext(servletContext), request,
+                    response, velocityContext, null);
         model.end(currentRequest);
         return VelocityUtil.EMPTY_RENDERABLE;
     }
@@ -85,12 +82,10 @@
     /** {@inheritDoc} */
     public void start(HttpServletRequest request, HttpServletResponse response,
             Context velocityContext, Map<String, Object> params) {
-        TilesContainer container = ServletUtil.getCurrentContainer(
-                request, servletContext);
         Request currentRequest = VelocityTilesRequestContext
-                .createVelocityRequest(container
-                        .getApplicationContext(), request, response,
-                        velocityContext, null);
+                .createVelocityRequest(ServletUtil
+                        .getApplicationContext(servletContext), request,
+                        response, velocityContext, null);
         model.start((String) params.get("role"), currentRequest);
     }
 }

Modified: tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/DefinitionVModel.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/DefinitionVModel.java?rev=883078&r1=883077&r2=883078&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/DefinitionVModel.java (original)
+++ tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/DefinitionVModel.java Sun Nov 22 13:57:09 2009
@@ -27,10 +27,8 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
-import org.apache.tiles.TilesContainer;
-import org.apache.tiles.mgmt.MutableTilesContainer;
 import org.apache.tiles.request.Request;
-import org.apache.tiles.servlet.context.ServletUtil;
+import org.apache.tiles.request.servlet.ServletUtil;
 import org.apache.tiles.template.DefinitionModel;
 import org.apache.tiles.velocity.context.VelocityTilesRequestContext;
 import org.apache.tiles.velocity.context.VelocityUtil;
@@ -41,9 +39,9 @@
  * Wraps {@link DefinitionModel} to be used in Velocity. For the list of
  * parameters, see
  * {@link DefinitionModel#start(String, String, String, String, String, Request)}
- * , {@link DefinitionModel#end(MutableTilesContainer, Request)} and
- * {@link DefinitionModel#execute(MutableTilesContainer, String, String, String,
- * String, String, Request)}.
+ * , {@link DefinitionModel#end(Request)} and
+ * {@link DefinitionModel#execute(String, String, String, String,
+ * String, Request)}.
  *
  * @version $Rev$ $Date$
  * @since 2.2.0
@@ -76,16 +74,13 @@
     public Renderable execute(HttpServletRequest request,
             HttpServletResponse response, Context velocityContext,
             Map<String, Object> params) {
-        TilesContainer container = ServletUtil.getCurrentContainer(
-                request, servletContext);
         Request currentRequest = VelocityTilesRequestContext
-                .createVelocityRequest(container
-                        .getApplicationContext(), request, response,
-                        velocityContext, null);
-        model.execute((MutableTilesContainer) container, (String) params.get("name"),
-                (String) params.get("template"), (String) params.get("role"),
-                (String) params.get("extends"), (String) params.get("preparer"),
-                currentRequest);
+        .createVelocityRequest(ServletUtil
+                .getApplicationContext(servletContext), request,
+                response, velocityContext, null);
+        model.execute((String) params.get("name"), (String) params.get("template"),
+                (String) params.get("role"), (String) params.get("extends"),
+                (String) params.get("preparer"), currentRequest);
 
         return VelocityUtil.EMPTY_RENDERABLE;
     }
@@ -93,25 +88,21 @@
     /** {@inheritDoc} */
     public Renderable end(HttpServletRequest request,
             HttpServletResponse response, Context velocityContext) {
-        TilesContainer container = ServletUtil.getCurrentContainer(
-                request, servletContext);
         Request currentRequest = VelocityTilesRequestContext
-                .createVelocityRequest(container
-                        .getApplicationContext(), request, response,
-                        velocityContext, null);
-        model.end((MutableTilesContainer) container, currentRequest);
+                .createVelocityRequest(ServletUtil
+                        .getApplicationContext(servletContext), request,
+                        response, velocityContext, null);
+        model.end(currentRequest);
         return VelocityUtil.EMPTY_RENDERABLE;
     }
 
     /** {@inheritDoc} */
     public void start(HttpServletRequest request, HttpServletResponse response,
             Context velocityContext, Map<String, Object> params) {
-        TilesContainer container = ServletUtil.getCurrentContainer(
-                request, servletContext);
         Request currentRequest = VelocityTilesRequestContext
-                .createVelocityRequest(container
-                        .getApplicationContext(), request, response,
-                        velocityContext, null);
+                .createVelocityRequest(ServletUtil
+                        .getApplicationContext(servletContext), request,
+                        response, velocityContext, null);
         model.start((String) params
                 .get("name"), (String) params.get("template"), (String) params
                 .get("role"), (String) params.get("extends"), (String) params

Modified: tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/GetAsStringVModel.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/GetAsStringVModel.java?rev=883078&r1=883077&r2=883078&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/GetAsStringVModel.java (original)
+++ tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/GetAsStringVModel.java Sun Nov 22 13:57:09 2009
@@ -30,9 +30,8 @@
 import javax.servlet.http.HttpServletResponse;
 
 import org.apache.tiles.Attribute;
-import org.apache.tiles.TilesContainer;
 import org.apache.tiles.request.Request;
-import org.apache.tiles.servlet.context.ServletUtil;
+import org.apache.tiles.request.servlet.ServletUtil;
 import org.apache.tiles.template.GetAsStringModel;
 import org.apache.tiles.velocity.context.VelocityTilesRequestContext;
 import org.apache.tiles.velocity.context.VelocityUtil;
@@ -43,11 +42,11 @@
 /**
  * Wraps {@link GetAsStringModel} to be used in Velocity. For the list of
  * parameters, see
- * {@link GetAsStringModel#start(TilesContainer, boolean, String,
- * String, Object, String, String, String, Attribute, Request)}
- * , {@link GetAsStringModel#end(TilesContainer, Writer, boolean, Request)} and
- * {@link GetAsStringModel#execute(TilesContainer, Writer, boolean, String,
- * String, Object, String, String, String, Attribute, Request)}.
+ * {@link GetAsStringModel#start(boolean, String, String,
+ * Object, String, String, String, Attribute, Request)}
+ * , {@link GetAsStringModel#end(boolean, Request)} and
+ * {@link GetAsStringModel#execute(boolean, String, String, Object,
+ * String, String, String, Attribute, Request)}.
  *
  * @version $Rev$ $Date$
  * @since 2.2.0
@@ -86,21 +85,18 @@
 
             public boolean render(InternalContextAdapter context, Writer writer)
                     throws IOException {
-                TilesContainer container = ServletUtil.getCurrentContainer(
-                        request, servletContext);
                 Request currentRequest = VelocityTilesRequestContext
-                        .createVelocityRequest(container
-                                .getApplicationContext(), request, response,
-                                velocityContext, writer);
-                model.execute(container, writer,
-                        VelocityUtil.toSimpleBoolean((Boolean) params
-                                .get("ignore"), false), (String) params
-                                .get("preparer"), (String) params.get("role"),
-                        params.get("defaultValue"), (String) params
-                                .get("defaultValueRole"), (String) params
-                                .get("defaultValueType"), (String) params
-                                .get("name"), (Attribute) params.get("value"),
-                        currentRequest);
+                        .createVelocityRequest(ServletUtil
+                                .getApplicationContext(servletContext), request,
+                                response, velocityContext, writer);
+                model.execute(VelocityUtil.toSimpleBoolean((Boolean) params
+                        .get("ignore"), false), (String) params
+                .get("preparer"),
+                        (String) params.get("role"), params.get("defaultValue"), (String) params
+                                .get("defaultValueRole"),
+                        (String) params
+                  .get("defaultValueType"), (String) params
+                                        .get("name"), (Attribute) params.get("value"), currentRequest);
                 return true;
             }
         };
@@ -110,18 +106,16 @@
     public void start(HttpServletRequest request, HttpServletResponse response,
             Context velocityContext, Map<String, Object> params) {
         VelocityUtil.getParameterStack(velocityContext).push(params);
-        TilesContainer container = ServletUtil.getCurrentContainer(
-                request, servletContext);
         Request currentRequest = VelocityTilesRequestContext
-                .createVelocityRequest(container.getApplicationContext(),
-                        request, response, velocityContext, null);
-        model.start(container, VelocityUtil
-                .toSimpleBoolean((Boolean) params.get("ignore"), false), (String) params.get("preparer"),
-                (String) params.get("role"), params.get("defaultValue"),
+                .createVelocityRequest(ServletUtil
+                        .getApplicationContext(servletContext), request,
+                        response, velocityContext, null);
+        model.start(VelocityUtil
+                .toSimpleBoolean((Boolean) params.get("ignore"), false), (String) params.get("preparer"), (String) params.get("role"),
+                params.get("defaultValue"), (String) params
+                        .get("defaultValueRole"),
                 (String) params
-                        .get("defaultValueRole"), (String) params
-                .get("defaultValueType"), (String) params.get("name"), (Attribute) params.get("value"),
-                currentRequest);
+            .get("defaultValueType"), (String) params.get("name"), (Attribute) params.get("value"), currentRequest);
     }
 
     /** {@inheritDoc} */
@@ -133,14 +127,12 @@
 
             public boolean render(InternalContextAdapter context, Writer writer)
                     throws IOException {
-                TilesContainer container = ServletUtil.getCurrentContainer(
-                        request, servletContext);
                 Request currentRequest = VelocityTilesRequestContext
-                        .createVelocityRequest(container.getApplicationContext(),
-                                request, response, velocityContext, writer);
-                model.end(container, writer, VelocityUtil.toSimpleBoolean((Boolean) params
-                        .get("ignore"), false),
-                        currentRequest);
+                        .createVelocityRequest(ServletUtil
+                                .getApplicationContext(servletContext), request,
+                                response, velocityContext, writer);
+                model.end(VelocityUtil.toSimpleBoolean((Boolean) params
+                        .get("ignore"), false), currentRequest);
                 return true;
             }
         };

Modified: tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/ImportAttributeVModel.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/ImportAttributeVModel.java?rev=883078&r1=883077&r2=883078&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/ImportAttributeVModel.java (original)
+++ tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/ImportAttributeVModel.java Sun Nov 22 13:57:09 2009
@@ -21,7 +21,6 @@
 
 package org.apache.tiles.velocity.template;
 
-import java.io.IOException;
 import java.io.Writer;
 import java.util.Map;
 
@@ -29,9 +28,8 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
-import org.apache.tiles.TilesContainer;
 import org.apache.tiles.request.Request;
-import org.apache.tiles.servlet.context.ServletUtil;
+import org.apache.tiles.request.servlet.ServletUtil;
 import org.apache.tiles.template.ImportAttributeModel;
 import org.apache.tiles.velocity.context.VelocityTilesRequestContext;
 import org.apache.tiles.velocity.context.VelocityUtil;
@@ -42,8 +40,8 @@
 /**
  * Wraps {@link ImportAttributeModel} to be used in Velocity. For the list of
  * parameters, see
- * {@link ImportAttributeModel#getImportedAttributes(org.apache.tiles.TilesContainer,
- * String, String, boolean, Request)}.
+ * {@link ImportAttributeModel#getImportedAttributes(String,
+ * String, boolean, Request)}.
  *
  * @version $Rev$ $Date$
  * @since 2.2.0
@@ -80,19 +78,16 @@
         return new AbstractDefaultToStringRenderable(velocityContext, params,
                 response, request) {
 
-            public boolean render(InternalContextAdapter context, Writer writer)
-                    throws IOException {
-                TilesContainer container = ServletUtil.getCurrentContainer(
-                        request, servletContext);
+            public boolean render(InternalContextAdapter context, Writer writer) {
                 Request currentRequest = VelocityTilesRequestContext
-                        .createVelocityRequest(container.getApplicationContext(),
-                                request, response, velocityContext, writer);
+                        .createVelocityRequest(ServletUtil
+                                .getApplicationContext(servletContext), request,
+                                response, velocityContext, writer);
                 Map<String, Object> attributes = model.getImportedAttributes(
-                        container,
-                        (String) params.get("name"), (String) params
+                        (String) params.get("name"),
+                        (String) params
                                 .get("toName"), VelocityUtil.toSimpleBoolean(
-                                (Boolean) params.get("ignore"), false),
-                        currentRequest);
+                        (Boolean) params.get("ignore"), false), currentRequest);
                 String scope = (String) params.get("scope");
                 for (Map.Entry<String, Object> entry : attributes.entrySet()) {
                     VelocityUtil.setAttribute(context, request,

Modified: tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertAttributeVModel.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertAttributeVModel.java?rev=883078&r1=883077&r2=883078&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertAttributeVModel.java (original)
+++ tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertAttributeVModel.java Sun Nov 22 13:57:09 2009
@@ -30,9 +30,8 @@
 import javax.servlet.http.HttpServletResponse;
 
 import org.apache.tiles.Attribute;
-import org.apache.tiles.TilesContainer;
 import org.apache.tiles.request.Request;
-import org.apache.tiles.servlet.context.ServletUtil;
+import org.apache.tiles.request.servlet.ServletUtil;
 import org.apache.tiles.template.InsertAttributeModel;
 import org.apache.tiles.velocity.context.VelocityTilesRequestContext;
 import org.apache.tiles.velocity.context.VelocityUtil;
@@ -43,11 +42,11 @@
 /**
  * Wraps {@link InsertAttributeModel} to be used in Velocity. For the list of
  * parameters, see
- * {@link InsertAttributeModel#start(org.apache.tiles.TilesContainer, boolean, String,
- * String, Object, String, String, String, Attribute, Request)}
- * , {@link InsertAttributeModel#end(org.apache.tiles.TilesContainer, boolean, Request)} and
- * {@link InsertAttributeModel#execute(org.apache.tiles.TilesContainer, boolean, String, String,
- * Object, String, String, String, Attribute, Request)}.
+ * {@link InsertAttributeModel#start(boolean, String, String,
+ * Object, String, String, String, Attribute, Request)}
+ * , {@link InsertAttributeModel#end(boolean, Request)} and
+ * {@link InsertAttributeModel#execute(boolean, String, String, Object,
+ * String, String, String, Attribute, Request)}.
  *
  * @version $Rev$ $Date$
  * @since 2.2.0
@@ -86,14 +85,12 @@
 
             public boolean render(InternalContextAdapter context, Writer writer)
                     throws IOException {
-                TilesContainer container = ServletUtil.getCurrentContainer(
-                        request, servletContext);
                 Request currentRequest = VelocityTilesRequestContext
-                        .createVelocityRequest(container.getApplicationContext(),
-                                request, response, velocityContext, writer);
-                model.end(container, VelocityUtil.toSimpleBoolean((Boolean) params
-                        .get("ignore"), false),
-                        currentRequest);
+                        .createVelocityRequest(ServletUtil
+                                .getApplicationContext(servletContext), request,
+                                response, velocityContext, writer);
+                model.end(VelocityUtil.toSimpleBoolean((Boolean) params
+                        .get("ignore"), false), currentRequest);
                 return true;
             }
         };
@@ -103,17 +100,15 @@
     public void start(HttpServletRequest request, HttpServletResponse response,
             Context velocityContext, Map<String, Object> params) {
         VelocityUtil.getParameterStack(velocityContext).push(params);
-        TilesContainer container = ServletUtil.getCurrentContainer(
-                request, servletContext);
         Request currentRequest = VelocityTilesRequestContext
-                .createVelocityRequest(container.getApplicationContext(),
-                        request, response, velocityContext, null);
-        model.start(container, VelocityUtil.toSimpleBoolean((Boolean) params.get("ignore"), false),
-                (String) params.get("preparer"),
-                (String) params.get("role"), params.get("defaultValue"),
-                (String) params.get("defaultValueRole"), (String) params.get("defaultValueType"),
-                (String) params.get("name"), (Attribute) params.get("value"),
-                currentRequest);
+                .createVelocityRequest(ServletUtil
+                        .getApplicationContext(servletContext), request,
+                        response, velocityContext, null);
+        model.start(VelocityUtil.toSimpleBoolean((Boolean) params.get("ignore"), false), (String) params.get("preparer"),
+                (String) params.get("role"),
+                params.get("defaultValue"), (String) params.get("defaultValueRole"),
+                (String) params.get("defaultValueType"), (String) params.get("name"),
+                (Attribute) params.get("value"), currentRequest);
 
     }
 
@@ -125,18 +120,17 @@
 
             public boolean render(InternalContextAdapter context, Writer writer)
                     throws IOException {
-                TilesContainer container = ServletUtil.getCurrentContainer(
-                        request, servletContext);
                 Request currentRequest = VelocityTilesRequestContext
-                        .createVelocityRequest(container.getApplicationContext(),
-                                request, response, velocityContext, writer);
-                model.execute(container, VelocityUtil.toSimpleBoolean(
+                        .createVelocityRequest(ServletUtil
+                                .getApplicationContext(servletContext), request,
+                                response, velocityContext, writer);
+                model.execute(VelocityUtil.toSimpleBoolean(
                         (Boolean) params.get("ignore"), false), (String) params
-                        .get("preparer"), (String) params.get("role"), params
+                .get("preparer"), (String) params.get("role"), params
                         .get("defaultValue"), (String) params
                         .get("defaultValueRole"), (String) params
-                        .get("defaultValueType"), (String) params.get("name"),
-                        (Attribute) params.get("value"), currentRequest);
+                        .get("defaultValueType"), (String) params.get("name"), (Attribute) params.get("value"),
+                        currentRequest);
                 return true;
             }
         };

Modified: tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertDefinitionVModel.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertDefinitionVModel.java?rev=883078&r1=883077&r2=883078&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertDefinitionVModel.java (original)
+++ tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertDefinitionVModel.java Sun Nov 22 13:57:09 2009
@@ -21,7 +21,6 @@
 
 package org.apache.tiles.velocity.template;
 
-import java.io.IOException;
 import java.io.Writer;
 import java.util.Map;
 
@@ -29,9 +28,8 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
-import org.apache.tiles.TilesContainer;
 import org.apache.tiles.request.Request;
-import org.apache.tiles.servlet.context.ServletUtil;
+import org.apache.tiles.request.servlet.ServletUtil;
 import org.apache.tiles.template.InsertDefinitionModel;
 import org.apache.tiles.velocity.context.VelocityTilesRequestContext;
 import org.apache.tiles.velocity.context.VelocityUtil;
@@ -42,11 +40,11 @@
 /**
  * Wraps {@link InsertDefinitionModel} to be used in Velocity. For the list of
  * parameters, see
- * {@link InsertDefinitionModel#start(org.apache.tiles.TilesContainer, Request)}
- * , {@link InsertDefinitionModel#end(org.apache.tiles.TilesContainer,
- * String, String, String, String, String, String, Request)} and
- * {@link InsertDefinitionModel#execute(org.apache.tiles.TilesContainer,
- * String, String, String, String, String, String, Request)}.
+ * {@link InsertDefinitionModel#start(Request)}
+ * , {@link InsertDefinitionModel#end(String,
+ * String, String, String, String, String, Request)} and
+ * {@link InsertDefinitionModel#execute(String,
+ * String, String, String, String, String, Request)}.
  *
  * @version $Rev$ $Date$
  * @since 2.2.0
@@ -82,19 +80,16 @@
             Map<String, Object> params) {
         return new AbstractDefaultToStringRenderable(velocityContext, params, response, request) {
 
-            public boolean render(InternalContextAdapter context, Writer writer)
-                    throws IOException {
-                TilesContainer container = ServletUtil.getCurrentContainer(
-                        request, servletContext);
+            public boolean render(InternalContextAdapter context, Writer writer) {
                 Request currentRequest = VelocityTilesRequestContext
-                        .createVelocityRequest(container.getApplicationContext(),
-                                request, response, velocityContext, writer);
-                model.execute(container, (String) params.get("name"),
-                        (String) params.get("template"), (String) params
+                        .createVelocityRequest(ServletUtil
+                                .getApplicationContext(servletContext), request,
+                                response, velocityContext, writer);
+                model.execute((String) params.get("name"), (String) params.get("template"),
+                        (String) params
                                 .get("templateType"), (String) params
-                                .get("templateExpression"), (String) params
-                                .get("role"), (String) params.get("preparer"),
-                        currentRequest);
+                        .get("templateExpression"), (String) params
+                                .get("role"), (String) params.get("preparer"), currentRequest);
                 return true;
             }
         };
@@ -107,19 +102,16 @@
         return new AbstractDefaultToStringRenderable(velocityContext, params,
                 response, request) {
 
-            public boolean render(InternalContextAdapter context, Writer writer)
-                    throws IOException {
-                TilesContainer container = ServletUtil.getCurrentContainer(
-                        request, servletContext);
+            public boolean render(InternalContextAdapter context, Writer writer) {
                 Request currentRequest = VelocityTilesRequestContext
-                        .createVelocityRequest(container.getApplicationContext(),
-                                request, response, velocityContext, writer);
-                model.end(container, (String) params.get("name"),
-                        (String) params.get("template"), (String) params
+                        .createVelocityRequest(ServletUtil
+                                .getApplicationContext(servletContext), request,
+                                response, velocityContext, writer);
+                model.end((String) params.get("name"), (String) params.get("template"),
+                        (String) params
                                 .get("templateType"), (String) params
-                                .get("templateExpression"), (String) params
-                                .get("role"), (String) params.get("preparer"),
-                        currentRequest);
+                        .get("templateExpression"), (String) params
+                                .get("role"), (String) params.get("preparer"), currentRequest);
                 return true;
             }
         };
@@ -129,11 +121,10 @@
     public void start(HttpServletRequest request, HttpServletResponse response,
             Context velocityContext, Map<String, Object> params) {
         VelocityUtil.getParameterStack(velocityContext).push(params);
-        TilesContainer container = ServletUtil.getCurrentContainer(
-                request, servletContext);
         Request currentRequest = VelocityTilesRequestContext
-                .createVelocityRequest(container.getApplicationContext(),
-                        request, response, velocityContext, null);
-        model.start(container, currentRequest);
+                .createVelocityRequest(ServletUtil
+                        .getApplicationContext(servletContext), request,
+                        response, velocityContext, null);
+        model.start(currentRequest);
     }
 }

Modified: tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertTemplateVModel.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertTemplateVModel.java?rev=883078&r1=883077&r2=883078&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertTemplateVModel.java (original)
+++ tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/InsertTemplateVModel.java Sun Nov 22 13:57:09 2009
@@ -21,7 +21,6 @@
 
 package org.apache.tiles.velocity.template;
 
-import java.io.IOException;
 import java.io.Writer;
 import java.util.Map;
 
@@ -29,9 +28,8 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
-import org.apache.tiles.TilesContainer;
 import org.apache.tiles.request.Request;
-import org.apache.tiles.servlet.context.ServletUtil;
+import org.apache.tiles.request.servlet.ServletUtil;
 import org.apache.tiles.template.InsertTemplateModel;
 import org.apache.tiles.velocity.context.VelocityTilesRequestContext;
 import org.apache.tiles.velocity.context.VelocityUtil;
@@ -42,11 +40,11 @@
 /**
  * Wraps {@link InsertTemplateModel} to be used in Velocity. For the list of
  * parameters, see
- * {@link InsertTemplateModel#start(org.apache.tiles.TilesContainer, Request)}
- * , {@link InsertTemplateModel#end(org.apache.tiles.TilesContainer,
- * String, String, String, String, String, Request)} and
- * {@link InsertTemplateModel#execute(org.apache.tiles.TilesContainer,
- * String, String, String, String, String, Request)}.
+ * {@link InsertTemplateModel#start(Request)}
+ * , {@link InsertTemplateModel#end(String,
+ * String, String, String, String, Request)} and
+ * {@link InsertTemplateModel#execute(String,
+ * String, String, String, String, Request)}.
  *
  * @version $Rev$ $Date$
  * @since 2.2.0
@@ -82,18 +80,15 @@
             Map<String, Object> params) {
         return new AbstractDefaultToStringRenderable(velocityContext, params, response, request) {
 
-            public boolean render(InternalContextAdapter context, Writer writer)
-                    throws IOException {
-                TilesContainer container = ServletUtil.getCurrentContainer(
-                        request, servletContext);
+            public boolean render(InternalContextAdapter context, Writer writer) {
                 Request currentRequest = VelocityTilesRequestContext
-                        .createVelocityRequest(container.getApplicationContext(),
-                                request, response, velocityContext, writer);
-                model.execute(container, (String) params.get("template"),
-                        (String) params.get("templateType"), (String) params
+                        .createVelocityRequest(ServletUtil
+                                .getApplicationContext(servletContext), request,
+                                response, velocityContext, writer);
+                model.execute((String) params.get("template"), (String) params.get("templateType"),
+                        (String) params
                                 .get("templateExpression"), (String) params
-                                .get("role"), (String) params.get("preparer"),
-                        currentRequest);
+                        .get("role"), (String) params.get("preparer"), currentRequest);
                 return true;
             }
         };
@@ -106,18 +101,16 @@
                 velocityContext).pop();
         return new AbstractDefaultToStringRenderable(velocityContext, params, response, request) {
 
-            public boolean render(InternalContextAdapter context, Writer writer)
-                    throws IOException {
-                TilesContainer container = ServletUtil.getCurrentContainer(
-                        request, servletContext);
+            public boolean render(InternalContextAdapter context, Writer writer) {
                 Request currentRequest = VelocityTilesRequestContext
-                        .createVelocityRequest(container.getApplicationContext(),
-                                request, response, velocityContext, writer);
-                model.end(container, (String) params.get("template"),
-                        (String) params.get("templateType"), (String) params
-                                .get("templateExpression"), (String) params.get("role"),
+                        .createVelocityRequest(ServletUtil
+                                .getApplicationContext(servletContext), request,
+                                response, velocityContext, writer);
+                model.end((String) params.get("template"), (String) params.get("templateType"),
                         (String) params
-                                .get("preparer"), currentRequest);
+                                .get("templateExpression"), (String) params.get("role"), (String) params
+                                        .get("preparer"),
+                        currentRequest);
                 return true;
             }
         };
@@ -127,11 +120,10 @@
     public void start(HttpServletRequest request, HttpServletResponse response,
             Context velocityContext, Map<String, Object> params) {
         VelocityUtil.getParameterStack(velocityContext).push(params);
-        TilesContainer container = ServletUtil.getCurrentContainer(
-                request, servletContext);
         Request currentRequest = VelocityTilesRequestContext
-                .createVelocityRequest(container.getApplicationContext(),
-                        request, response, velocityContext, null);
-        model.start(container, currentRequest);
+                .createVelocityRequest(ServletUtil
+                        .getApplicationContext(servletContext), request,
+                        response, velocityContext, null);
+        model.start(currentRequest);
     }
 }

Modified: tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/PutAttributeVModel.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/PutAttributeVModel.java?rev=883078&r1=883077&r2=883078&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/PutAttributeVModel.java (original)
+++ tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/PutAttributeVModel.java Sun Nov 22 13:57:09 2009
@@ -27,9 +27,8 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
-import org.apache.tiles.TilesContainer;
 import org.apache.tiles.request.Request;
-import org.apache.tiles.servlet.context.ServletUtil;
+import org.apache.tiles.request.servlet.ServletUtil;
 import org.apache.tiles.template.PutAttributeModel;
 import org.apache.tiles.velocity.context.VelocityTilesRequestContext;
 import org.apache.tiles.velocity.context.VelocityUtil;
@@ -40,10 +39,10 @@
  * Wraps {@link PutAttributeModel} to be used in Velocity. For the list of
  * parameters, see
  * {@link PutAttributeModel#start(Request)}
- * , {@link PutAttributeModel#end(org.apache.tiles.TilesContainer,
- * String, Object, String, String, String, String, boolean, Request)} and
- * {@link PutAttributeModel#execute(org.apache.tiles.TilesContainer,
- * String, Object, String, String, String, String, boolean, Request)}.
+ * , {@link PutAttributeModel#end(String,
+ * Object, String, String, String, String, boolean, Request)} and
+ * {@link PutAttributeModel#execute(String,
+ * Object, String, String, String, String, boolean, Request)}.
  *
  * @version $Rev$ $Date$
  * @since 2.2.0
@@ -77,17 +76,16 @@
     public Renderable execute(HttpServletRequest request,
             HttpServletResponse response, Context velocityContext,
             Map<String, Object> params) {
-        TilesContainer container = ServletUtil.getCurrentContainer(
-                request, servletContext);
         Request currentRequest = VelocityTilesRequestContext
-                .createVelocityRequest(container.getApplicationContext(),
-                        request, response, velocityContext, null);
-        model.execute(container,
-                (String) params
-                        .get("name"), params.get("value"), (String) params
-                        .get("expression"), null, (String) params.get("role"), (String) params.get("type"),
-                VelocityUtil.toSimpleBoolean(
-                        (Boolean) params.get("cascade"), false), currentRequest);
+                .createVelocityRequest(ServletUtil
+                        .getApplicationContext(servletContext), request,
+                        response, velocityContext, null);
+        model.execute((String) params
+                .get("name"),
+                params.get("value"), (String) params
+                        .get("expression"), null, (String) params.get("role"), (String) params.get("type"), VelocityUtil.toSimpleBoolean(
+                                (Boolean) params.get("cascade"), false),
+                currentRequest);
 
         return VelocityUtil.EMPTY_RENDERABLE;
     }
@@ -97,17 +95,16 @@
             Context velocityContext) {
         Map<String, Object> params = VelocityUtil.getParameterStack(
                 velocityContext).pop();
-        TilesContainer container = ServletUtil.getCurrentContainer(
-                request, servletContext);
         Request currentRequest = VelocityTilesRequestContext
-                .createVelocityRequest(container.getApplicationContext(),
-                        request, response, velocityContext, null);
-        model.end(container,
-                (String) params
-                        .get("name"), params.get("value"), (String) params
-                        .get("expression"), null, (String) params.get("role"), (String) params.get("type"),
-                VelocityUtil.toSimpleBoolean(
-                        (Boolean) params.get("cascade"), false), currentRequest);
+                .createVelocityRequest(ServletUtil
+                        .getApplicationContext(servletContext), request,
+                        response, velocityContext, null);
+        model.end((String) params
+                .get("name"),
+                params.get("value"), (String) params
+                        .get("expression"), null, (String) params.get("role"), (String) params.get("type"), VelocityUtil.toSimpleBoolean(
+                                (Boolean) params.get("cascade"), false),
+                currentRequest);
         return VelocityUtil.EMPTY_RENDERABLE;
     }
 
@@ -115,11 +112,10 @@
     public void start(HttpServletRequest request, HttpServletResponse response,
             Context velocityContext, Map<String, Object> params) {
         VelocityUtil.getParameterStack(velocityContext).push(params);
-        TilesContainer container = ServletUtil.getCurrentContainer(
-                request, servletContext);
         Request currentRequest = VelocityTilesRequestContext
-                .createVelocityRequest(container.getApplicationContext(),
-                        request, response, velocityContext, null);
+                .createVelocityRequest(ServletUtil
+                        .getApplicationContext(servletContext), request,
+                        response, velocityContext, null);
         model.start(currentRequest);
     }
 }

Modified: tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/PutListAttributeVModel.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/PutListAttributeVModel.java?rev=883078&r1=883077&r2=883078&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/PutListAttributeVModel.java (original)
+++ tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/PutListAttributeVModel.java Sun Nov 22 13:57:09 2009
@@ -27,9 +27,8 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
-import org.apache.tiles.TilesContainer;
 import org.apache.tiles.request.Request;
-import org.apache.tiles.servlet.context.ServletUtil;
+import org.apache.tiles.request.servlet.ServletUtil;
 import org.apache.tiles.template.PutListAttributeModel;
 import org.apache.tiles.velocity.context.VelocityTilesRequestContext;
 import org.apache.tiles.velocity.context.VelocityUtil;
@@ -40,7 +39,7 @@
  * Wraps {@link PutListAttributeModel} to be used in Velocity. For the list of
  * parameters, see
  * {@link PutListAttributeModel#start(String, boolean, Request)}
- * AND {@link PutListAttributeModel#end(org.apache.tiles.TilesContainer, String, boolean, Request)}.
+ * AND {@link PutListAttributeModel#end(String, boolean, Request)}.
  *
  * @version $Rev$ $Date$
  * @since 2.2.0
@@ -75,15 +74,14 @@
             Context velocityContext) {
         Map<String, Object> params = VelocityUtil.getParameterStack(
                 velocityContext).pop();
-        TilesContainer container = ServletUtil.getCurrentContainer(
-                request, servletContext);
         Request currentRequest = VelocityTilesRequestContext
-                .createVelocityRequest(container.getApplicationContext(),
-                        request, response, velocityContext, null);
-        model.end(container,
-                (String) params
-                        .get("name"), VelocityUtil.toSimpleBoolean(
-                (Boolean) params.get("cascade"), false), currentRequest);
+                .createVelocityRequest(ServletUtil
+                        .getApplicationContext(servletContext), request,
+                        response, velocityContext, null);
+        model.end((String) params
+                .get("name"),
+                VelocityUtil.toSimpleBoolean(
+            (Boolean) params.get("cascade"), false), currentRequest);
         return VelocityUtil.EMPTY_RENDERABLE;
     }
 
@@ -91,11 +89,10 @@
     public void start(HttpServletRequest request, HttpServletResponse response,
             Context velocityContext, Map<String, Object> params) {
         VelocityUtil.getParameterStack(velocityContext).push(params);
-        TilesContainer container = ServletUtil.getCurrentContainer(
-                request, servletContext);
         Request currentRequest = VelocityTilesRequestContext
-                .createVelocityRequest(container.getApplicationContext(),
-                        request, response, velocityContext, null);
+                .createVelocityRequest(ServletUtil
+                        .getApplicationContext(servletContext), request,
+                        response, velocityContext, null);
         model.start((String) params.get("role"), VelocityUtil.toSimpleBoolean(
                 (Boolean) params.get("inherit"), false), currentRequest);
     }

Modified: tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/VelocityStyleTilesTool.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/VelocityStyleTilesTool.java?rev=883078&r1=883077&r2=883078&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/VelocityStyleTilesTool.java (original)
+++ tiles/sandbox/trunk/tiles3/tiles-velocity/src/main/java/org/apache/tiles/velocity/template/VelocityStyleTilesTool.java Sun Nov 22 13:57:09 2009
@@ -24,12 +24,14 @@
 import java.io.IOException;
 import java.io.Writer;
 
+import javax.servlet.ServletContext;
+
 import org.apache.tiles.Attribute;
 import org.apache.tiles.AttributeContext;
 import org.apache.tiles.TilesContainer;
+import org.apache.tiles.access.TilesAccess;
 import org.apache.tiles.request.Request;
-import org.apache.tiles.request.servlet.ServletTilesRequestContext;
-import org.apache.tiles.servlet.context.ServletUtil;
+import org.apache.tiles.request.servlet.ServletUtil;
 import org.apache.tiles.velocity.context.VelocityTilesRequestContext;
 import org.apache.velocity.context.InternalContextAdapter;
 import org.apache.velocity.runtime.Renderable;
@@ -50,12 +52,9 @@
      * @since 2.2.0
      */
     public Attribute getAttribute(String key) {
-        TilesContainer container = ServletUtil.getCurrentContainer(
-                getRequest(), getServletContext());
-        Request servletRequest = new ServletTilesRequestContext(container
-                .getApplicationContext(), getRequest(), getResponse());
-        Request velocityRequest = new VelocityTilesRequestContext(
-                servletRequest, getVelocityContext(), null);
+        Request velocityRequest = createVelocityRequest(getServletContext(),
+                null);
+        TilesContainer container = TilesAccess.getCurrentContainer(velocityRequest);
         AttributeContext attributeContext = container
                 .getAttributeContext(velocityRequest);
         Attribute attribute = attributeContext.getAttribute(key);
@@ -107,9 +106,10 @@
 
             public boolean render(InternalContextAdapter context, Writer writer)
                     throws IOException {
-                TilesContainer container = ServletUtil.getCurrentContainer(request, getServletContext());
-                Request velocityRequest = createVelocityRequest(container,
-                        writer);
+                Request velocityRequest = createVelocityRequest(
+                        getServletContext(), writer);
+                TilesContainer container = TilesAccess
+                        .getCurrentContainer(velocityRequest);
                 container.render(attribute, velocityRequest);
                 return true;
             }
@@ -130,11 +130,11 @@
         return new AbstractDefaultToStringRenderable(getVelocityContext(),
                 null, getResponse(), getRequest()) {
 
-            public boolean render(InternalContextAdapter context, Writer writer)
-                    throws IOException {
-                TilesContainer container = ServletUtil.getCurrentContainer(request, getServletContext());
-                Request velocityRequest = createVelocityRequest(container,
-                        writer);
+            public boolean render(InternalContextAdapter context, Writer writer) {
+                Request velocityRequest = createVelocityRequest(
+                        getServletContext(), writer);
+                TilesContainer container = TilesAccess
+                        .getCurrentContainer(velocityRequest);
                 container.render(definitionName, velocityRequest);
                 return true;
             }
@@ -154,11 +154,11 @@
         return new AbstractDefaultToStringRenderable(getVelocityContext(),
                 null, getResponse(), getRequest()) {
 
-            public boolean render(InternalContextAdapter context, Writer writer)
-                    throws IOException {
-                TilesContainer container = ServletUtil.getCurrentContainer(request, getServletContext());
-                Request velocityRequest = createVelocityRequest(container,
-                        writer);
+            public boolean render(InternalContextAdapter context, Writer writer) {
+                Request velocityRequest = createVelocityRequest(
+                        getServletContext(), writer);
+                TilesContainer container = TilesAccess
+                        .getCurrentContainer(velocityRequest);
                 container.renderContext(velocityRequest);
                 return true;
             }
@@ -174,9 +174,10 @@
      * @since 2.2.0
      */
     public AttributeContext startAttributeContext() {
-        TilesContainer container = ServletUtil.getCurrentContainer(
-                getRequest(), getServletContext());
-        Request velocityRequest = createVelocityRequest(container, null);
+        Request velocityRequest = createVelocityRequest(
+                getServletContext(), null);
+        TilesContainer container = TilesAccess
+                .getCurrentContainer(velocityRequest);
         return container.startContext(velocityRequest);
     }
 
@@ -188,9 +189,10 @@
      * @since 2.2.0
      */
     public VelocityStyleTilesTool endAttributeContext() {
-        TilesContainer container = ServletUtil.getCurrentContainer(
-                getRequest(), getServletContext());
-        Request velocityRequest = createVelocityRequest(container, null);
+        Request velocityRequest = createVelocityRequest(getServletContext(),
+                null);
+        TilesContainer container = TilesAccess
+                .getCurrentContainer(velocityRequest);
         container.endContext(velocityRequest);
         return this;
     }
@@ -202,9 +204,10 @@
      * @since 2.2.0
      */
     public AttributeContext getAttributeContext() {
-        TilesContainer container = ServletUtil.getCurrentContainer(
-                getRequest(), getServletContext());
-        Request velocityRequest = createVelocityRequest(container, null);
+        Request velocityRequest = createVelocityRequest(
+                getServletContext(), null);
+        TilesContainer container = TilesAccess
+                .getCurrentContainer(velocityRequest);
         return container.getAttributeContext(velocityRequest);
     }
 
@@ -216,8 +219,9 @@
      * @since 2.2.0
      */
     public VelocityStyleTilesTool setCurrentContainer(String containerKey) {
-        ServletUtil.setCurrentContainer(getRequest(), getServletContext(),
-                containerKey);
+        Request velocityRequest = createVelocityRequest(
+                getServletContext(), null);
+        TilesAccess.setCurrentContainer(velocityRequest, containerKey);
         return this;
     }
 
@@ -227,10 +231,10 @@
         return "";
     }
 
-    protected Request createVelocityRequest(TilesContainer container,
-            Writer writer) {
-        return VelocityTilesRequestContext.createVelocityRequest(container
-                .getApplicationContext(), getRequest(), getResponse(),
-                getVelocityContext(), writer);
+    protected Request createVelocityRequest(
+            ServletContext servletContext, Writer writer) {
+        return VelocityTilesRequestContext.createVelocityRequest(ServletUtil
+                .getApplicationContext(servletContext), getRequest(),
+                getResponse(), getVelocityContext(), writer);
     }
 }

Modified: tiles/sandbox/trunk/tiles3/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddAttributeVModelTest.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddAttributeVModelTest.java?rev=883078&r1=883077&r2=883078&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddAttributeVModelTest.java (original)
+++ tiles/sandbox/trunk/tiles3/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddAttributeVModelTest.java Sun Nov 22 13:57:09 2009
@@ -33,9 +33,8 @@
 import javax.servlet.http.HttpServletResponse;
 
 import org.apache.tiles.ArrayStack;
-import org.apache.tiles.TilesContainer;
-import org.apache.tiles.access.TilesAccess;
 import org.apache.tiles.request.ApplicationContext;
+import org.apache.tiles.request.util.ApplicationContextUtil;
 import org.apache.tiles.template.AddAttributeModel;
 import org.apache.tiles.velocity.context.VelocityTilesRequestContext;
 import org.apache.tiles.velocity.context.VelocityUtil;
@@ -68,6 +67,8 @@
      */
     private AddAttributeModel tModel;
 
+    private ApplicationContext applicationContext;
+
     /**
      * Sets up the model to test.
      */
@@ -76,6 +77,10 @@
         tModel = createMock(AddAttributeModel.class);
         servletContext = createMock(ServletContext.class);
         model = new AddAttributeVModel(tModel, servletContext);
+        applicationContext = createMock(ApplicationContext.class);
+        expect(servletContext.getAttribute(ApplicationContextUtil
+                .APPLICATION_CONTEXT_ATTRIBUTE)).andReturn(applicationContext)
+                .anyTimes();
     }
 
     /**
@@ -89,17 +94,13 @@
         HttpServletResponse response = createMock(HttpServletResponse.class);
         Context velocityContext = createMock(Context.class);
         Map<String, Object> params = createParams();
-        TilesContainer container = createMock(TilesContainer.class);
-        ApplicationContext applicationContext = createMock(ApplicationContext.class);
 
-        expect(container.getApplicationContext()).andReturn(applicationContext);
-        expect(request.getAttribute(TilesAccess.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container);
         tModel.execute(eq("myValue"), eq("myExpression"), (String) isNull(),
                 eq("myRole"), eq("myType"), isA(VelocityTilesRequestContext.class));
 
-        replay(tModel, request, response, velocityContext, servletContext, container, applicationContext);
+        replay(tModel, request, response, velocityContext, servletContext, applicationContext);
         assertEquals(VelocityUtil.EMPTY_RENDERABLE, model.execute(request, response, velocityContext, params));
-        verify(tModel, request, response, velocityContext, servletContext, container, applicationContext);
+        verify(tModel, request, response, velocityContext, servletContext, applicationContext);
     }
 
     /**
@@ -114,19 +115,15 @@
         Context velocityContext = createMock(Context.class);
         Map<String, Object> params = createParams();
         ArrayStack<Map<String, Object>> parameterMapStack = new ArrayStack<Map<String, Object>>();
-        TilesContainer container = createMock(TilesContainer.class);
-        ApplicationContext applicationContext = createMock(ApplicationContext.class);
 
-        expect(container.getApplicationContext()).andReturn(applicationContext);
-        expect(request.getAttribute(TilesAccess.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container);
         expect(velocityContext.get(PARAMETER_MAP_STACK_KEY)).andReturn(parameterMapStack);
         tModel.start(isA(VelocityTilesRequestContext.class));
 
-        replay(tModel, request, response, velocityContext, servletContext, container, applicationContext);
+        replay(tModel, request, response, velocityContext, servletContext, applicationContext);
         model.start(request, response, velocityContext, params);
         assertEquals(1, parameterMapStack.size());
         assertEquals(params, parameterMapStack.peek());
-        verify(tModel, request, response, velocityContext, servletContext, container, applicationContext);
+        verify(tModel, request, response, velocityContext, servletContext, applicationContext);
     }
 
     /**
@@ -142,19 +139,15 @@
         Map<String, Object> params = createParams();
         ArrayStack<Map<String, Object>> parameterMapStack = new ArrayStack<Map<String, Object>>();
         parameterMapStack.push(params);
-        TilesContainer container = createMock(TilesContainer.class);
-        ApplicationContext applicationContext = createMock(ApplicationContext.class);
 
-        expect(container.getApplicationContext()).andReturn(applicationContext);
-        expect(request.getAttribute(TilesAccess.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container);
         expect(velocityContext.get(PARAMETER_MAP_STACK_KEY)).andReturn(parameterMapStack);
         tModel.end(eq("myValue"), eq("myExpression"), (String) isNull(),
                 eq("myRole"), eq("myType"), isA(VelocityTilesRequestContext.class));
 
-        replay(tModel, request, response, velocityContext, container, applicationContext);
+        replay(tModel, request, response, velocityContext, applicationContext);
         assertEquals(VelocityUtil.EMPTY_RENDERABLE, model.end(request, response, velocityContext));
         assertTrue(parameterMapStack.isEmpty());
-        verify(tModel, request, response, velocityContext, container, applicationContext);
+        verify(tModel, request, response, velocityContext, applicationContext);
     }
 
     /**

Modified: tiles/sandbox/trunk/tiles3/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddListAttributeVModelTest.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddListAttributeVModelTest.java?rev=883078&r1=883077&r2=883078&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddListAttributeVModelTest.java (original)
+++ tiles/sandbox/trunk/tiles3/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddListAttributeVModelTest.java Sun Nov 22 13:57:09 2009
@@ -32,9 +32,8 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
-import org.apache.tiles.TilesContainer;
-import org.apache.tiles.access.TilesAccess;
 import org.apache.tiles.request.ApplicationContext;
+import org.apache.tiles.request.util.ApplicationContextUtil;
 import org.apache.tiles.template.AddListAttributeModel;
 import org.apache.tiles.velocity.context.VelocityTilesRequestContext;
 import org.apache.tiles.velocity.context.VelocityUtil;
@@ -62,6 +61,8 @@
      */
     private ServletContext servletContext;
 
+    private ApplicationContext applicationContext;
+
     /**
      * Sets up the model to test.
      */
@@ -70,6 +71,10 @@
         tModel = createMock(AddListAttributeModel.class);
         servletContext = createMock(ServletContext.class);
         model = new AddListAttributeVModel(tModel, servletContext);
+        applicationContext = createMock(ApplicationContext.class);
+        expect(servletContext.getAttribute(ApplicationContextUtil
+                .APPLICATION_CONTEXT_ATTRIBUTE)).andReturn(applicationContext)
+                .anyTimes();
     }
 
     /**
@@ -83,16 +88,12 @@
         HttpServletResponse response = createMock(HttpServletResponse.class);
         Context velocityContext = createMock(Context.class);
         Map<String, Object> params = createParams();
-        TilesContainer container = createMock(TilesContainer.class);
-        ApplicationContext applicationContext = createMock(ApplicationContext.class);
 
-        expect(container.getApplicationContext()).andReturn(applicationContext);
-        expect(request.getAttribute(TilesAccess.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container);
         tModel.start(eq("myRole"), isA(VelocityTilesRequestContext.class));
 
-        replay(tModel, request, response, velocityContext, servletContext, container, applicationContext);
+        replay(tModel, request, response, velocityContext, servletContext, applicationContext);
         model.start(request, response, velocityContext, params);
-        verify(tModel, request, response, velocityContext, servletContext, container, applicationContext);
+        verify(tModel, request, response, velocityContext, servletContext, applicationContext);
     }
 
     /**
@@ -105,16 +106,12 @@
         HttpServletRequest request = createMock(HttpServletRequest.class);
         HttpServletResponse response = createMock(HttpServletResponse.class);
         Context velocityContext = createMock(Context.class);
-        TilesContainer container = createMock(TilesContainer.class);
-        ApplicationContext applicationContext = createMock(ApplicationContext.class);
 
-        expect(container.getApplicationContext()).andReturn(applicationContext);
-        expect(request.getAttribute(TilesAccess.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container);
         tModel.end(isA(VelocityTilesRequestContext.class));
 
-        replay(tModel, request, response, velocityContext, servletContext, container, applicationContext);
+        replay(tModel, request, response, velocityContext, servletContext, applicationContext);
         assertEquals(VelocityUtil.EMPTY_RENDERABLE, model.end(request, response, velocityContext));
-        verify(tModel, request, response, velocityContext, servletContext, container, applicationContext);
+        verify(tModel, request, response, velocityContext, servletContext, applicationContext);
     }
 
     /**

Modified: tiles/sandbox/trunk/tiles3/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/DefinitionVModelTest.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/DefinitionVModelTest.java?rev=883078&r1=883077&r2=883078&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/DefinitionVModelTest.java (original)
+++ tiles/sandbox/trunk/tiles3/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/DefinitionVModelTest.java Sun Nov 22 13:57:09 2009
@@ -33,9 +33,8 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
-import org.apache.tiles.access.TilesAccess;
-import org.apache.tiles.mgmt.MutableTilesContainer;
 import org.apache.tiles.request.ApplicationContext;
+import org.apache.tiles.request.util.ApplicationContextUtil;
 import org.apache.tiles.template.DefinitionModel;
 import org.apache.tiles.velocity.context.VelocityTilesRequestContext;
 import org.apache.tiles.velocity.context.VelocityUtil;
@@ -63,6 +62,8 @@
      */
     private ServletContext servletContext;
 
+    private ApplicationContext applicationContext;
+
     /**
      * Sets up the model to test.
      */
@@ -70,6 +71,10 @@
     public void setUp() {
         tModel = createMock(DefinitionModel.class);
         servletContext = createMock(ServletContext.class);
+        applicationContext = createMock(ApplicationContext.class);
+        expect(servletContext.getAttribute(ApplicationContextUtil
+                .APPLICATION_CONTEXT_ATTRIBUTE)).andReturn(applicationContext)
+                .anyTimes();
     }
 
     /**
@@ -82,20 +87,15 @@
         HttpServletRequest request = createMock(HttpServletRequest.class);
         HttpServletResponse response = createMock(HttpServletResponse.class);
         Context velocityContext = createMock(Context.class);
-        MutableTilesContainer container = createMock(MutableTilesContainer.class);
         Map<String, Object> params = createParams();
-        ApplicationContext applicationContext = createMock(ApplicationContext.class);
 
-        expect(container.getApplicationContext()).andReturn(applicationContext);
-        expect(request.getAttribute(TilesAccess.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container);
-        tModel.execute(eq(container), eq("myName"), eq("myTemplate"),
-                eq("myRole"), eq("myExtends"), eq("myPreparer"),
-                isA(VelocityTilesRequestContext.class));
+        tModel.execute(eq("myName"), eq("myTemplate"), eq("myRole"),
+                eq("myExtends"), eq("myPreparer"), isA(VelocityTilesRequestContext.class));
 
-        replay(tModel, servletContext, request, response, velocityContext, container, applicationContext);
+        replay(tModel, servletContext, request, response, velocityContext, applicationContext);
         initializeModel();
         assertEquals(VelocityUtil.EMPTY_RENDERABLE, model.execute(request, response, velocityContext, params));
-        verify(tModel, servletContext, request, response, velocityContext, container, applicationContext);
+        verify(tModel, servletContext, request, response, velocityContext, applicationContext);
     }
 
     /**
@@ -109,11 +109,7 @@
         HttpServletResponse response = createMock(HttpServletResponse.class);
         Context velocityContext = createMock(Context.class);
         Map<String, Object> params = createParams();
-        MutableTilesContainer container = createMock(MutableTilesContainer.class);
-        ApplicationContext applicationContext = createMock(ApplicationContext.class);
 
-        expect(container.getApplicationContext()).andReturn(applicationContext);
-        expect(request.getAttribute(TilesAccess.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container);
         tModel.start(eq("myName"), eq("myTemplate"), eq("myRole"),
                 eq("myExtends"), eq("myPreparer"),
                 isA(VelocityTilesRequestContext.class));
@@ -135,17 +131,13 @@
         HttpServletRequest request = createMock(HttpServletRequest.class);
         HttpServletResponse response = createMock(HttpServletResponse.class);
         Context velocityContext = createMock(Context.class);
-        MutableTilesContainer container = createMock(MutableTilesContainer.class);
-        ApplicationContext applicationContext = createMock(ApplicationContext.class);
 
-        expect(container.getApplicationContext()).andReturn(applicationContext);
-        expect(request.getAttribute(TilesAccess.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container);
-        tModel.end(eq(container), isA(VelocityTilesRequestContext.class));
+        tModel.end(isA(VelocityTilesRequestContext.class));
 
-        replay(tModel, servletContext, request, response, velocityContext, container, applicationContext);
+        replay(tModel, servletContext, request, response, velocityContext, applicationContext);
         initializeModel();
         assertEquals(VelocityUtil.EMPTY_RENDERABLE, model.end(request, response, velocityContext));
-        verify(tModel, servletContext, request, response, velocityContext, container, applicationContext);
+        verify(tModel, servletContext, request, response, velocityContext, applicationContext);
     }
 
     /**