Modified: 
tiles/sandbox/trunk/tiles3/tiles-core/src/test/java/org/apache/tiles/impl/BasicTilesContainerUnitTest.java
URL: 
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-core/src/test/java/org/apache/tiles/impl/BasicTilesContainerUnitTest.java?rev=1035061&r1=1035060&r2=1035061&view=diff
==============================================================================
--- 
tiles/sandbox/trunk/tiles3/tiles-core/src/test/java/org/apache/tiles/impl/BasicTilesContainerUnitTest.java
 (original)
+++ 
tiles/sandbox/trunk/tiles3/tiles-core/src/test/java/org/apache/tiles/impl/BasicTilesContainerUnitTest.java
 Sun Nov 14 20:32:50 2010
@@ -3,6 +3,7 @@
  */
 package org.apache.tiles.impl;
 
+import static org.easymock.EasyMock.*;
 import static org.easymock.classextension.EasyMock.*;
 import static org.junit.Assert.*;
 
@@ -22,10 +23,12 @@ import org.apache.tiles.evaluator.Attrib
 import org.apache.tiles.preparer.NoSuchPreparerException;
 import org.apache.tiles.preparer.PreparerFactory;
 import org.apache.tiles.preparer.ViewPreparer;
-import org.apache.tiles.renderer.AttributeRenderer;
-import org.apache.tiles.renderer.RendererFactory;
 import org.apache.tiles.request.ApplicationContext;
 import org.apache.tiles.request.Request;
+import org.apache.tiles.request.render.CannotRenderException;
+import org.apache.tiles.request.render.NoSuchRendererException;
+import org.apache.tiles.request.render.Renderer;
+import org.apache.tiles.request.render.RendererFactory;
 import org.junit.Before;
 import org.junit.Test;
 
@@ -136,7 +139,8 @@ public class BasicTilesContainerUnitTest
         AttributeContext attributeContext = createMock(AttributeContext.class);
         ViewPreparer preparer = createMock(ViewPreparer.class);
         Attribute templateAttribute = createMock(Attribute.class);
-        AttributeRenderer renderer = createMock(AttributeRenderer.class);
+        Renderer renderer = createMock(Renderer.class);
+        AttributeEvaluator evaluator = createMock(AttributeEvaluator.class);
 
         expect(request.getContext("request")).andReturn(requestScope);
         expect(requestScope.get(ATTRIBUTE_CONTEXT_STACK)).andReturn(deque);
@@ -146,13 +150,16 @@ public class BasicTilesContainerUnitTest
         
expect(attributeContext.getTemplateAttribute()).andReturn(templateAttribute);
         expect(templateAttribute.getRenderer()).andReturn("renderer");
         expect(rendererFactory.getRenderer("renderer")).andReturn(renderer);
-        renderer.render(templateAttribute, request);
+        
expect(attributeEvaluatorFactory.getAttributeEvaluator(templateAttribute)).andReturn(evaluator);
+        expect(evaluator.evaluate(templateAttribute, 
request)).andReturn("/mytemplate.jsp");
+        expect(templateAttribute.isPermitted(request)).andReturn(true);
+        renderer.render("/mytemplate.jsp", request);
 
-        replay(applicationContext, attributeEvaluatorFactory,
+        replay(applicationContext, attributeEvaluatorFactory, evaluator,
                 definitionsFactory, preparerFactory, rendererFactory, request,
                 requestScope, deque, attributeContext, preparer, 
templateAttribute, renderer);
         container.renderContext(request);
-        verify(applicationContext, attributeEvaluatorFactory,
+        verify(applicationContext, attributeEvaluatorFactory, evaluator,
                 definitionsFactory, preparerFactory, rendererFactory, request,
                 requestScope, deque, attributeContext, preparer, 
templateAttribute, renderer);
     }
@@ -308,8 +315,9 @@ public class BasicTilesContainerUnitTest
         Deque<AttributeContext> deque = createMock(Deque.class);
         AttributeContext attributeContext = createMock(AttributeContext.class);
         ViewPreparer preparer = createMock(ViewPreparer.class);
-        AttributeRenderer renderer = createMock(AttributeRenderer.class);
+        Renderer renderer = createMock(Renderer.class);
         Definition definition = createMock(Definition.class);
+        AttributeEvaluator evaluator = createMock(AttributeEvaluator.class);
 
         Attribute templateAttribute = 
Attribute.createTemplateAttribute("/my/template.jsp");
 
@@ -325,14 +333,16 @@ public class BasicTilesContainerUnitTest
         expect(definition.getTemplateAttribute()).andReturn(templateAttribute);
         expect(rendererFactory.getRenderer("template")).andReturn(renderer);
         deque.push(isA(BasicAttributeContext.class));
-        renderer.render(templateAttribute, request);
+        
expect(attributeEvaluatorFactory.getAttributeEvaluator(templateAttribute)).andReturn(evaluator);
+        expect(evaluator.evaluate(templateAttribute, 
request)).andReturn("/my/template.jsp");
+        renderer.render("/my/template.jsp", request);
         expect(deque.pop()).andReturn(null);
 
-        replay(applicationContext, attributeEvaluatorFactory,
+        replay(applicationContext, attributeEvaluatorFactory, evaluator,
                 definitionsFactory, preparerFactory, rendererFactory, request,
                 requestScope, deque, attributeContext, preparer, renderer, 
definition);
         container.render("definition", request);
-        verify(applicationContext, attributeEvaluatorFactory,
+        verify(applicationContext, attributeEvaluatorFactory, evaluator,
                 definitionsFactory, preparerFactory, rendererFactory, request,
                 requestScope, deque, attributeContext, preparer, renderer, 
definition);
     }
@@ -364,17 +374,21 @@ public class BasicTilesContainerUnitTest
     public void testRenderAttributeRequest() throws IOException {
         Request request = createMock(Request.class);
         Attribute templateAttribute = createMock(Attribute.class);
-        AttributeRenderer renderer = createMock(AttributeRenderer.class);
+        Renderer renderer = createMock(Renderer.class);
+        AttributeEvaluator evaluator = createMock(AttributeEvaluator.class);
 
         expect(templateAttribute.getRenderer()).andReturn("renderer");
         expect(rendererFactory.getRenderer("renderer")).andReturn(renderer);
-        renderer.render(templateAttribute, request);
+        
expect(attributeEvaluatorFactory.getAttributeEvaluator(templateAttribute)).andReturn(evaluator);
+        expect(evaluator.evaluate(templateAttribute, 
request)).andReturn("/mytemplate.jsp");
+        expect(templateAttribute.isPermitted(request)).andReturn(true);
+        renderer.render("/mytemplate.jsp", request);
 
-        replay(applicationContext, attributeEvaluatorFactory,
+        replay(applicationContext, attributeEvaluatorFactory, evaluator,
                 definitionsFactory, preparerFactory, rendererFactory, request,
                 templateAttribute, renderer);
         container.render(templateAttribute, request);
-        verify(applicationContext, attributeEvaluatorFactory,
+        verify(applicationContext, attributeEvaluatorFactory, evaluator,
                 definitionsFactory, preparerFactory, rendererFactory, request,
                 templateAttribute, renderer);
     }
@@ -402,21 +416,78 @@ public class BasicTilesContainerUnitTest
      * Test method for {...@link 
org.apache.tiles.impl.BasicTilesContainer#render(org.apache.tiles.request.Request,
 org.apache.tiles.Attribute)}.
      * @throws IOException If something goes wrong.
      */
-    @Test(expected=CannotRenderException.class)
+    @Test(expected=NoSuchRendererException.class)
     public void testRenderAttributeRequestException2() throws IOException {
         Request request = createMock(Request.class);
         Attribute templateAttribute = createMock(Attribute.class);
+        AttributeEvaluator evaluator = createMock(AttributeEvaluator.class);
 
         expect(templateAttribute.getRenderer()).andReturn("renderer");
-        expect(rendererFactory.getRenderer("renderer")).andReturn(null);
+        expect(templateAttribute.isPermitted(request)).andReturn(true);
+        expect(rendererFactory.getRenderer("renderer")).andThrow(new 
NoSuchRendererException());
 
-        replay(applicationContext, attributeEvaluatorFactory,
+        replay(applicationContext, attributeEvaluatorFactory, evaluator,
                 definitionsFactory, preparerFactory, rendererFactory, request,
                 templateAttribute);
         try {
             container.render(templateAttribute, request);
         } finally {
-            verify(applicationContext, attributeEvaluatorFactory,
+            verify(applicationContext, attributeEvaluatorFactory, evaluator,
+                    definitionsFactory, preparerFactory, rendererFactory,
+                    request, templateAttribute);
+        }
+    }
+
+    /**
+     * Test method for {...@link 
org.apache.tiles.impl.BasicTilesContainer#render(org.apache.tiles.request.Request,
 org.apache.tiles.Attribute)}.
+     * @throws IOException If something goes wrong.
+     */
+    @Test(expected=CannotRenderException.class)
+    public void testRenderAttributeRequestException3() throws IOException {
+        Request request = createMock(Request.class);
+        Attribute templateAttribute = createMock(Attribute.class);
+        AttributeEvaluator evaluator = createMock(AttributeEvaluator.class);
+        Renderer renderer = createMock(Renderer.class);
+
+        expect(templateAttribute.getRenderer()).andReturn("renderer");
+        expect(templateAttribute.isPermitted(request)).andReturn(true);
+        expect(rendererFactory.getRenderer("renderer")).andReturn(renderer);
+        
expect(attributeEvaluatorFactory.getAttributeEvaluator(templateAttribute)).andReturn(evaluator);
+        expect(evaluator.evaluate(templateAttribute, request)).andReturn(new 
Integer(1));
+
+        replay(applicationContext, attributeEvaluatorFactory, evaluator,
+                definitionsFactory, preparerFactory, rendererFactory, request,
+                templateAttribute);
+        try {
+            container.render(templateAttribute, request);
+        } finally {
+            verify(applicationContext, attributeEvaluatorFactory, evaluator,
+                    definitionsFactory, preparerFactory, rendererFactory,
+                    request, templateAttribute);
+        }
+    }
+
+    /**
+     * Test method for {...@link 
org.apache.tiles.impl.BasicTilesContainer#render(org.apache.tiles.request.Request,
 org.apache.tiles.Attribute)}.
+     * @throws IOException If something goes wrong.
+     */
+    @Test(expected=NoSuchRendererException.class)
+    public void testRenderAttributeRequestException() throws IOException {
+        Request request = createMock(Request.class);
+        Attribute templateAttribute = createMock(Attribute.class);
+        AttributeEvaluator evaluator = createMock(AttributeEvaluator.class);
+
+        expect(templateAttribute.getRenderer()).andReturn("renderer");
+        expect(templateAttribute.isPermitted(request)).andReturn(true);
+        expect(rendererFactory.getRenderer("renderer")).andThrow(new 
NoSuchRendererException());
+
+        replay(applicationContext, attributeEvaluatorFactory, evaluator,
+                definitionsFactory, preparerFactory, rendererFactory, request,
+                templateAttribute);
+        try {
+            container.render(templateAttribute, request);
+        } finally {
+            verify(applicationContext, attributeEvaluatorFactory, evaluator,
                     definitionsFactory, preparerFactory, rendererFactory,
                     request, templateAttribute);
         }
@@ -662,8 +733,9 @@ public class BasicTilesContainerUnitTest
         Deque<AttributeContext> deque = createMock(Deque.class);
         AttributeContext attributeContext = createMock(AttributeContext.class);
         ViewPreparer preparer = createMock(ViewPreparer.class);
-        AttributeRenderer renderer = createMock(AttributeRenderer.class);
+        Renderer renderer = createMock(Renderer.class);
         Definition definition = createMock(Definition.class);
+        AttributeEvaluator evaluator = createMock(AttributeEvaluator.class);
 
         Attribute templateAttribute = 
Attribute.createTemplateAttribute("/my/template.jsp");
 
@@ -678,14 +750,16 @@ public class BasicTilesContainerUnitTest
         expect(definition.getTemplateAttribute()).andReturn(templateAttribute);
         expect(rendererFactory.getRenderer("template")).andReturn(renderer);
         deque.push(isA(BasicAttributeContext.class));
-        renderer.render(templateAttribute, request);
+        
expect(attributeEvaluatorFactory.getAttributeEvaluator(templateAttribute)).andReturn(evaluator);
+        expect(evaluator.evaluate(templateAttribute, 
request)).andReturn("/my/template.jsp");
+        renderer.render("/my/template.jsp", request);
         expect(deque.pop()).andReturn(null);
 
-        replay(applicationContext, attributeEvaluatorFactory,
+        replay(applicationContext, attributeEvaluatorFactory, evaluator,
                 definitionsFactory, preparerFactory, rendererFactory, request,
                 requestScope, deque, attributeContext, preparer, renderer, 
definition);
         container.render(definition, request);
-        verify(applicationContext, attributeEvaluatorFactory,
+        verify(applicationContext, attributeEvaluatorFactory, evaluator,
                 definitionsFactory, preparerFactory, rendererFactory, request,
                 requestScope, deque, attributeContext, preparer, renderer, 
definition);
     }
@@ -702,8 +776,9 @@ public class BasicTilesContainerUnitTest
         Deque<AttributeContext> deque = createMock(Deque.class);
         AttributeContext attributeContext = createMock(AttributeContext.class);
         ViewPreparer preparer = createMock(ViewPreparer.class);
-        AttributeRenderer renderer = createMock(AttributeRenderer.class);
+        Renderer renderer = createMock(Renderer.class);
         Definition definition = createMock(Definition.class);
+        AttributeEvaluator evaluator = createMock(AttributeEvaluator.class);
 
         Attribute templateAttribute = 
Attribute.createTemplateAttribute("/my/template.jsp");
 
@@ -718,17 +793,19 @@ public class BasicTilesContainerUnitTest
         expect(definition.getTemplateAttribute()).andReturn(templateAttribute);
         expect(rendererFactory.getRenderer("template")).andReturn(renderer);
         deque.push(isA(BasicAttributeContext.class));
-        renderer.render(templateAttribute, request);
+        
expect(attributeEvaluatorFactory.getAttributeEvaluator(templateAttribute)).andReturn(evaluator);
+        expect(evaluator.evaluate(templateAttribute, 
request)).andReturn("/mytemplate.jsp");
+        renderer.render("/mytemplate.jsp", request);
         expectLastCall().andThrow(new IOException());
         expect(deque.pop()).andReturn(null);
 
-        replay(applicationContext, attributeEvaluatorFactory,
+        replay(applicationContext, attributeEvaluatorFactory, evaluator,
                 definitionsFactory, preparerFactory, rendererFactory, request,
                 requestScope, deque, attributeContext, preparer, renderer, 
definition);
         try {
             container.render(definition, request);
         } finally {
-            verify(applicationContext, attributeEvaluatorFactory,
+            verify(applicationContext, attributeEvaluatorFactory, evaluator,
                     definitionsFactory, preparerFactory, rendererFactory,
                     request, requestScope, deque, attributeContext, preparer,
                     renderer, definition);
@@ -748,19 +825,23 @@ public class BasicTilesContainerUnitTest
         AttributeContext attributeContext = createMock(AttributeContext.class);
         ViewPreparer preparer = createMock(ViewPreparer.class);
         Attribute templateAttribute = createMock(Attribute.class);
-        AttributeRenderer renderer = createMock(AttributeRenderer.class);
+        Renderer renderer = createMock(Renderer.class);
+        AttributeEvaluator evaluator = createMock(AttributeEvaluator.class);
 
         expect(attributeContext.getPreparer()).andReturn(null);
         
expect(attributeContext.getTemplateAttribute()).andReturn(templateAttribute);
         expect(templateAttribute.getRenderer()).andReturn("renderer");
         expect(rendererFactory.getRenderer("renderer")).andReturn(renderer);
-        renderer.render(templateAttribute, request);
+        
expect(attributeEvaluatorFactory.getAttributeEvaluator(templateAttribute)).andReturn(evaluator);
+        expect(evaluator.evaluate(templateAttribute, 
request)).andReturn("/mytemplate.jsp");
+        expect(templateAttribute.isPermitted(request)).andReturn(true);
+        renderer.render("/mytemplate.jsp", request);
 
-        replay(applicationContext, attributeEvaluatorFactory,
+        replay(applicationContext, attributeEvaluatorFactory, evaluator,
                 definitionsFactory, preparerFactory, rendererFactory, request,
                 requestScope, deque, attributeContext, preparer, 
templateAttribute, renderer);
         container.render(request, attributeContext);
-        verify(applicationContext, attributeEvaluatorFactory,
+        verify(applicationContext, attributeEvaluatorFactory, evaluator,
                 definitionsFactory, preparerFactory, rendererFactory, request,
                 requestScope, deque, attributeContext, preparer, 
templateAttribute, renderer);
     }
@@ -777,23 +858,27 @@ public class BasicTilesContainerUnitTest
         Deque<AttributeContext> deque = createMock(Deque.class);
         AttributeContext attributeContext = createMock(AttributeContext.class);
         Attribute templateAttribute = createMock(Attribute.class);
-        AttributeRenderer renderer = createMock(AttributeRenderer.class);
+        Renderer renderer = createMock(Renderer.class);
+        AttributeEvaluator evaluator = createMock(AttributeEvaluator.class);
 
         expect(attributeContext.getPreparer()).andReturn("preparer").times(2);
         expect(preparerFactory.getPreparer("preparer", 
request)).andReturn(null);
         
expect(attributeContext.getTemplateAttribute()).andReturn(templateAttribute);
         expect(templateAttribute.getRenderer()).andReturn("renderer");
         expect(rendererFactory.getRenderer("renderer")).andReturn(renderer);
-        renderer.render(templateAttribute, request);
+        
expect(attributeEvaluatorFactory.getAttributeEvaluator(templateAttribute)).andReturn(evaluator);
+        expect(evaluator.evaluate(templateAttribute, 
request)).andReturn("/mytemplate.jsp");
+        expect(templateAttribute.isPermitted(request)).andReturn(true);
+        renderer.render("/mytemplate.jsp", request);
         expectLastCall().andThrow(new IOException());
 
-        replay(applicationContext, attributeEvaluatorFactory,
+        replay(applicationContext, attributeEvaluatorFactory, evaluator,
                 definitionsFactory, preparerFactory, rendererFactory, request,
                 requestScope, deque, attributeContext, templateAttribute, 
renderer);
         try {
             container.render(request, attributeContext);
         } finally {
-            verify(applicationContext, attributeEvaluatorFactory,
+            verify(applicationContext, attributeEvaluatorFactory, evaluator,
                     definitionsFactory, preparerFactory, rendererFactory,
                     request, requestScope, deque, attributeContext,
                     templateAttribute, renderer);

Modified: 
tiles/sandbox/trunk/tiles3/tiles-core/src/test/java/org/apache/tiles/impl/CannotRenderExceptionTest.java
URL: 
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-core/src/test/java/org/apache/tiles/impl/CannotRenderExceptionTest.java?rev=1035061&r1=1035060&r2=1035061&view=diff
==============================================================================
--- 
tiles/sandbox/trunk/tiles3/tiles-core/src/test/java/org/apache/tiles/impl/CannotRenderExceptionTest.java
 (original)
+++ 
tiles/sandbox/trunk/tiles3/tiles-core/src/test/java/org/apache/tiles/impl/CannotRenderExceptionTest.java
 Sun Nov 14 20:32:50 2010
@@ -23,6 +23,7 @@ package org.apache.tiles.impl;
 
 import static org.junit.Assert.*;
 
+import org.apache.tiles.request.render.CannotRenderException;
 import org.junit.Test;
 
 /**

Copied: 
tiles/sandbox/trunk/tiles3/tiles-core/src/test/java/org/apache/tiles/renderer/DefinitionRendererTest.java
 (from r1034998, 
tiles/sandbox/trunk/tiles3/tiles-core/src/test/java/org/apache/tiles/renderer/impl/DefinitionRendererTest.java)
URL: 
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-core/src/test/java/org/apache/tiles/renderer/DefinitionRendererTest.java?p2=tiles/sandbox/trunk/tiles3/tiles-core/src/test/java/org/apache/tiles/renderer/DefinitionRendererTest.java&p1=tiles/sandbox/trunk/tiles3/tiles-core/src/test/java/org/apache/tiles/renderer/impl/DefinitionRendererTest.java&r1=1034998&r2=1035061&rev=1035061&view=diff
==============================================================================
--- 
tiles/sandbox/trunk/tiles3/tiles-core/src/test/java/org/apache/tiles/renderer/impl/DefinitionRendererTest.java
 (original)
+++ 
tiles/sandbox/trunk/tiles3/tiles-core/src/test/java/org/apache/tiles/renderer/DefinitionRendererTest.java
 Sun Nov 14 20:32:50 2010
@@ -18,7 +18,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.tiles.renderer.impl;
+package org.apache.tiles.renderer;
 
 import static org.easymock.EasyMock.*;
 import static org.junit.Assert.*;
@@ -26,6 +26,7 @@ import static org.junit.Assert.*;
 import java.io.IOException;
 
 import org.apache.tiles.TilesContainer;
+import org.apache.tiles.renderer.DefinitionRenderer;
 import org.apache.tiles.request.Request;
 import org.junit.Before;
 import org.junit.Test;

Modified: 
tiles/sandbox/trunk/tiles3/tiles-extras/src/main/java/org/apache/tiles/extras/complete/CompleteAutoloadTilesContainerFactory.java
URL: 
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-extras/src/main/java/org/apache/tiles/extras/complete/CompleteAutoloadTilesContainerFactory.java?rev=1035061&r1=1035060&r2=1035061&view=diff
==============================================================================
--- 
tiles/sandbox/trunk/tiles3/tiles-extras/src/main/java/org/apache/tiles/extras/complete/CompleteAutoloadTilesContainerFactory.java
 (original)
+++ 
tiles/sandbox/trunk/tiles3/tiles-extras/src/main/java/org/apache/tiles/extras/complete/CompleteAutoloadTilesContainerFactory.java
 Sun Nov 14 20:32:50 2010
@@ -73,16 +73,15 @@ import org.apache.tiles.ognl.PropertyAcc
 import org.apache.tiles.ognl.ScopePropertyAccessor;
 import org.apache.tiles.ognl.TilesApplicationContextNestedObjectExtractor;
 import org.apache.tiles.ognl.TilesContextPropertyAccessorDelegateFactory;
-import org.apache.tiles.renderer.AttributeRenderer;
-import org.apache.tiles.renderer.TypeDetectingAttributeRenderer;
-import org.apache.tiles.renderer.impl.BasicRendererFactory;
-import org.apache.tiles.renderer.impl.ChainedDelegateAttributeRenderer;
-import org.apache.tiles.renderer.impl.DelegateAttributeRenderer;
 import org.apache.tiles.request.ApplicationContext;
 import org.apache.tiles.request.Request;
 import org.apache.tiles.request.freemarker.render.FreemarkerRenderer;
 import org.apache.tiles.request.freemarker.render.FreemarkerRendererBuilder;
 import org.apache.tiles.request.freemarker.servlet.TilesFreemarkerServlet;
+import org.apache.tiles.request.render.BasicRendererFactory;
+import org.apache.tiles.request.render.ChainedDelegateRenderer;
+import org.apache.tiles.request.render.Renderer;
+import org.apache.tiles.request.render.TypeDetectingRenderer;
 import org.apache.tiles.request.velocity.render.VelocityRenderer;
 import org.apache.tiles.request.velocity.render.VelocityRendererBuilder;
 import org.apache.tiles.util.URLUtil;
@@ -147,39 +146,35 @@ public class CompleteAutoloadTilesContai
                         
TilesFreemarkerServlet.CUSTOM_SHARED_VARIABLE_FACTORIES_INIT_PARAM,
                         "tiles," + TilesSharedVariableFactory.class.getName())
                 .build();
-        rendererFactory.registerRenderer(FREEMARKER_RENDERER_NAME,
-                new DelegateAttributeRenderer(freemarkerRenderer,
-                        attributeEvaluatorFactory));
+        rendererFactory.registerRenderer(FREEMARKER_RENDERER_NAME, 
freemarkerRenderer);
 
         VelocityRenderer velocityRenderer = VelocityRendererBuilder
                 .createInstance().setApplicationContext(applicationContext)
                 .build();
         rendererFactory.registerRenderer(VELOCITY_RENDERER_NAME,
-                new DelegateAttributeRenderer(velocityRenderer,
-                        attributeEvaluatorFactory));
+                velocityRenderer);
     }
 
 
 
     /** {...@inheritdoc} */
     @Override
-    protected AttributeRenderer createDefaultAttributeRenderer(
+    protected Renderer createDefaultAttributeRenderer(
             BasicRendererFactory rendererFactory,
             ApplicationContext applicationContext,
             TilesContainer container,
             AttributeEvaluatorFactory attributeEvaluatorFactory) {
-        ChainedDelegateAttributeRenderer retValue = new 
ChainedDelegateAttributeRenderer();
-        retValue.addAttributeRenderer((TypeDetectingAttributeRenderer) 
rendererFactory
+        ChainedDelegateRenderer retValue = new ChainedDelegateRenderer();
+        retValue.addAttributeRenderer((TypeDetectingRenderer) rendererFactory
                 .getRenderer(DEFINITION_RENDERER_NAME));
-        retValue.addAttributeRenderer((TypeDetectingAttributeRenderer) 
rendererFactory
+        retValue.addAttributeRenderer((TypeDetectingRenderer) rendererFactory
                 .getRenderer(VELOCITY_RENDERER_NAME));
-        retValue.addAttributeRenderer((TypeDetectingAttributeRenderer) 
rendererFactory
+        retValue.addAttributeRenderer((TypeDetectingRenderer) rendererFactory
                 .getRenderer(FREEMARKER_RENDERER_NAME));
-        retValue.addAttributeRenderer((TypeDetectingAttributeRenderer) 
rendererFactory
+        retValue.addAttributeRenderer((TypeDetectingRenderer) rendererFactory
                 .getRenderer(TEMPLATE_RENDERER_NAME));
-        retValue.addAttributeRenderer((TypeDetectingAttributeRenderer) 
rendererFactory
+        retValue.addAttributeRenderer((TypeDetectingRenderer) rendererFactory
                 .getRenderer(STRING_RENDERER_NAME));
-        retValue.setAttributeEvaluatorFactory(attributeEvaluatorFactory);
         return retValue;
     }
 

Modified: 
tiles/sandbox/trunk/tiles3/tiles-extras/src/test/java/org/apache/tiles/extras/complete/CompleteAutoloadTilesContainerFactoryTest.java
URL: 
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-extras/src/test/java/org/apache/tiles/extras/complete/CompleteAutoloadTilesContainerFactoryTest.java?rev=1035061&r1=1035060&r2=1035061&view=diff
==============================================================================
--- 
tiles/sandbox/trunk/tiles3/tiles-extras/src/test/java/org/apache/tiles/extras/complete/CompleteAutoloadTilesContainerFactoryTest.java
 (original)
+++ 
tiles/sandbox/trunk/tiles3/tiles-extras/src/test/java/org/apache/tiles/extras/complete/CompleteAutoloadTilesContainerFactoryTest.java
 Sun Nov 14 20:32:50 2010
@@ -48,13 +48,17 @@ import org.apache.tiles.evaluator.Attrib
 import org.apache.tiles.evaluator.BasicAttributeEvaluatorFactory;
 import org.apache.tiles.impl.mgmt.CachingTilesContainer;
 import org.apache.tiles.locale.LocaleResolver;
-import org.apache.tiles.renderer.AttributeRenderer;
-import org.apache.tiles.renderer.TypeDetectingAttributeRenderer;
-import org.apache.tiles.renderer.impl.BasicRendererFactory;
-import org.apache.tiles.renderer.impl.ChainedDelegateAttributeRenderer;
-import org.apache.tiles.renderer.impl.DelegateAttributeRenderer;
+import org.apache.tiles.renderer.DefinitionRenderer;
 import org.apache.tiles.request.ApplicationContext;
+import org.apache.tiles.request.freemarker.render.FreemarkerRenderer;
+import org.apache.tiles.request.render.BasicRendererFactory;
+import org.apache.tiles.request.render.ChainedDelegateRenderer;
+import org.apache.tiles.request.render.DispatchRenderer;
+import org.apache.tiles.request.render.Renderer;
+import org.apache.tiles.request.render.StringRenderer;
+import org.apache.tiles.request.render.TypeDetectingRenderer;
 import org.apache.tiles.request.servlet.ServletApplicationContext;
+import org.apache.tiles.request.velocity.render.VelocityRenderer;
 import org.apache.velocity.tools.view.VelocityView;
 import org.junit.Before;
 import org.junit.Test;
@@ -113,15 +117,15 @@ public class CompleteAutoloadTilesContai
         ServletContext servletContext = createMock(ServletContext.class);
 
         rendererFactory.registerRenderer(eq("string"),
-                isA(DelegateAttributeRenderer.class));
+                isA(StringRenderer.class));
         rendererFactory.registerRenderer(eq("template"),
-                isA(DelegateAttributeRenderer.class));
+                isA(DispatchRenderer.class));
         rendererFactory.registerRenderer(eq("definition"),
-                isA(DelegateAttributeRenderer.class));
+                isA(DefinitionRenderer.class));
         rendererFactory.registerRenderer(eq("freemarker"),
-                isA(DelegateAttributeRenderer.class));
+                isA(FreemarkerRenderer.class));
         rendererFactory.registerRenderer(eq("velocity"),
-                isA(DelegateAttributeRenderer.class));
+                isA(VelocityRenderer.class));
 
         expect(applicationContext.getContext()).andReturn(servletContext)
                 .anyTimes();
@@ -170,11 +174,11 @@ public class CompleteAutoloadTilesContai
         TilesContainer container = createMock(TilesContainer.class);
         AttributeEvaluatorFactory attributeEvaluatorFactory = 
createMock(AttributeEvaluatorFactory.class);
         BasicRendererFactory rendererFactory = 
createMock(BasicRendererFactory.class);
-        AttributeRenderer stringRenderer = 
createMock(TypeDetectingAttributeRenderer.class);
-        AttributeRenderer templateRenderer = 
createMock(TypeDetectingAttributeRenderer.class);
-        AttributeRenderer definitionRenderer = 
createMock(TypeDetectingAttributeRenderer.class);
-        AttributeRenderer velocityRenderer = 
createMock(TypeDetectingAttributeRenderer.class);
-        AttributeRenderer freemarkerRenderer = 
createMock(TypeDetectingAttributeRenderer.class);
+        Renderer stringRenderer = createMock(TypeDetectingRenderer.class);
+        Renderer templateRenderer = createMock(TypeDetectingRenderer.class);
+        Renderer definitionRenderer = createMock(TypeDetectingRenderer.class);
+        Renderer velocityRenderer = createMock(TypeDetectingRenderer.class);
+        Renderer freemarkerRenderer = createMock(TypeDetectingRenderer.class);
 
         
expect(rendererFactory.getRenderer("string")).andReturn(stringRenderer);
         
expect(rendererFactory.getRenderer("template")).andReturn(templateRenderer);
@@ -184,11 +188,11 @@ public class CompleteAutoloadTilesContai
 
         replay(container, attributeEvaluatorFactory, rendererFactory,
                 applicationContext);
-        AttributeRenderer renderer = factory.createDefaultAttributeRenderer(
+        Renderer renderer = factory.createDefaultAttributeRenderer(
                 rendererFactory, applicationContext, container,
                 attributeEvaluatorFactory);
         assertTrue("The default renderer class is not correct",
-                renderer instanceof ChainedDelegateAttributeRenderer);
+                renderer instanceof ChainedDelegateRenderer);
         verify(container, attributeEvaluatorFactory, rendererFactory,
                 applicationContext);
     }

Modified: 
tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test-common/src/main/java/org/apache/tiles/test/factory/TestTilesContainerFactory.java
URL: 
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test-common/src/main/java/org/apache/tiles/test/factory/TestTilesContainerFactory.java?rev=1035061&r1=1035060&r2=1035061&view=diff
==============================================================================
--- 
tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test-common/src/main/java/org/apache/tiles/test/factory/TestTilesContainerFactory.java
 (original)
+++ 
tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test-common/src/main/java/org/apache/tiles/test/factory/TestTilesContainerFactory.java
 Sun Nov 14 20:32:50 2010
@@ -29,9 +29,9 @@ import org.apache.tiles.TilesContainer;
 import org.apache.tiles.definition.DefinitionsFactoryException;
 import org.apache.tiles.evaluator.AttributeEvaluatorFactory;
 import org.apache.tiles.extras.complete.CompleteAutoloadTilesContainerFactory;
-import org.apache.tiles.renderer.impl.BasicRendererFactory;
 import org.apache.tiles.request.ApplicationContext;
-import org.apache.tiles.test.renderer.ReverseStringAttributeRenderer;
+import org.apache.tiles.request.render.BasicRendererFactory;
+import org.apache.tiles.test.renderer.ReverseStringRenderer;
 import org.apache.tiles.util.URLUtil;
 
 
@@ -51,8 +51,7 @@ public class TestTilesContainerFactory e
             AttributeEvaluatorFactory attributeEvaluatorFactory) {
         super.registerAttributeRenderers(rendererFactory, applicationContext, 
container,
                 attributeEvaluatorFactory);
-        ReverseStringAttributeRenderer renderer = new 
ReverseStringAttributeRenderer();
-        renderer.setAttributeEvaluatorFactory(attributeEvaluatorFactory);
+        ReverseStringRenderer renderer = new ReverseStringRenderer();
         rendererFactory.registerRenderer("reversed", renderer);
     }
 

Copied: 
tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test-common/src/main/java/org/apache/tiles/test/renderer/ReverseStringRenderer.java
 (from r1001169, 
tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test-common/src/main/java/org/apache/tiles/test/renderer/ReverseStringAttributeRenderer.java)
URL: 
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test-common/src/main/java/org/apache/tiles/test/renderer/ReverseStringRenderer.java?p2=tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test-common/src/main/java/org/apache/tiles/test/renderer/ReverseStringRenderer.java&p1=tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test-common/src/main/java/org/apache/tiles/test/renderer/ReverseStringAttributeRenderer.java&r1=1001169&r2=1035061&rev=1035061&view=diff
==============================================================================
--- 
tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test-common/src/main/java/org/apache/tiles/test/renderer/ReverseStringAttributeRenderer.java
 (original)
+++ 
tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test-common/src/main/java/org/apache/tiles/test/renderer/ReverseStringRenderer.java
 Sun Nov 14 20:32:50 2010
@@ -22,24 +22,20 @@ package org.apache.tiles.test.renderer;
 
 import java.io.IOException;
 
-import org.apache.tiles.Attribute;
-import org.apache.tiles.renderer.impl.AbstractBaseAttributeRenderer;
 import org.apache.tiles.request.Request;
+import org.apache.tiles.request.render.Renderer;
 
 /**
  * A simple test <code>AttributeRenderer</code>.
  *
  * @version $Rev$ $Date$
  */
-public class ReverseStringAttributeRenderer extends 
AbstractBaseAttributeRenderer {
+public class ReverseStringRenderer implements Renderer {
 
     /** {...@inheritdoc} */
     @Override
-    public void write(Object value, Attribute attribute,
-            Request request)
-            throws IOException {
-        String original = attribute.getValue().toString();
-        char[] array = original.toCharArray();
+    public void render(String value, Request request) throws IOException {
+        char[] array = value.toCharArray();
         char[] newArray = new char[array.length];
         for (int i = 0; i < array.length; i++) {
             newArray[array.length - i - 1] = array[i];

Modified: 
tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/main/webapp/WEB-INF/freemarker/tiles-defs.xml
URL: 
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/main/webapp/WEB-INF/freemarker/tiles-defs.xml?rev=1035061&r1=1035060&r2=1035061&view=diff
==============================================================================
--- 
tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/main/webapp/WEB-INF/freemarker/tiles-defs.xml
 (original)
+++ 
tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/main/webapp/WEB-INF/freemarker/tiles-defs.xml
 Sun Nov 14 20:32:50 2010
@@ -181,13 +181,6 @@
       <put-attribute name="body"   value="/freemarker/body.ftl" 
type="freemarker" />
   </definition>
 
-  <definition name="freemarker.test.reversed.explicit.definition" 
template="/freemarker/layout_alt_title.ftl" templateType="freemarker">
-      <put-attribute name="title"  value="This is the title."
-          
type="org.apache.tiles.test.renderer.ReverseStringAttributeRenderer"/>
-      <put-attribute name="header" value="/freemarker/header.ftl" 
type="freemarker" />
-      <put-attribute name="body"   value="/freemarker/body.ftl" 
type="freemarker" />
-  </definition>
-
   <definition name="freemarker.test.nesting.definitions" 
template="/freemarker/layout.ftl" templateType="freemarker">
       <put-attribute name="title"  value="This is the title."/>
       <put-attribute name="header" value="/freemarker/header.ftl" 
type="freemarker" />

Modified: 
tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/main/webapp/WEB-INF/tiles-defs.xml
URL: 
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/main/webapp/WEB-INF/tiles-defs.xml?rev=1035061&r1=1035060&r2=1035061&view=diff
==============================================================================
--- 
tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/main/webapp/WEB-INF/tiles-defs.xml
 (original)
+++ 
tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/main/webapp/WEB-INF/tiles-defs.xml
 Sun Nov 14 20:32:50 2010
@@ -193,13 +193,6 @@
       <put-attribute name="body"   value="/body.jsp"/>
   </definition>
 
-  <definition name="test.reversed.explicit.definition" 
template="/layout_alt_title.jsp">
-      <put-attribute name="title"  value="This is the title."
-          
type="org.apache.tiles.test.renderer.ReverseStringAttributeRenderer"/>
-      <put-attribute name="header" value="/header.jsp"/>
-      <put-attribute name="body"   value="/body.jsp"/>
-  </definition>
-
   <definition name="test.nesting.definitions" template="/layout.jsp">
       <put-attribute name="title"  value="This is the title."/>
       <put-attribute name="header" value="/header.jsp"/>

Modified: 
tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/main/webapp/WEB-INF/velocity/tiles-defs.xml
URL: 
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/main/webapp/WEB-INF/velocity/tiles-defs.xml?rev=1035061&r1=1035060&r2=1035061&view=diff
==============================================================================
--- 
tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/main/webapp/WEB-INF/velocity/tiles-defs.xml
 (original)
+++ 
tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/main/webapp/WEB-INF/velocity/tiles-defs.xml
 Sun Nov 14 20:32:50 2010
@@ -181,13 +181,6 @@
       <put-attribute name="body"   value="/velocity/body.vm" type="velocity" />
   </definition>
 
-  <definition name="velocity.test.reversed.explicit.definition" 
template="/velocity/layout_alt_title.vm" templateType="velocity">
-      <put-attribute name="title"  value="This is the title."
-          
type="org.apache.tiles.test.renderer.ReverseStringAttributeRenderer"/>
-      <put-attribute name="header" value="/velocity/header.vm" type="velocity" 
/>
-      <put-attribute name="body"   value="/velocity/body.vm" type="velocity" />
-  </definition>
-
   <definition name="velocity.test.nesting.definitions" 
template="/velocity/layout.vm" templateType="velocity">
       <put-attribute name="title"  value="This is the title."/>
       <put-attribute name="header" value="/velocity/header.vm" type="velocity" 
/>

Modified: 
tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/main/webapp/index.jsp
URL: 
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/main/webapp/index.jsp?rev=1035061&r1=1035060&r2=1035061&view=diff
==============================================================================
--- 
tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/main/webapp/index.jsp 
(original)
+++ 
tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/main/webapp/index.jsp 
Sun Nov 14 20:32:50 2010
@@ -84,7 +84,6 @@
     <a href="testinsertdefinition_cascaded_template.jsp">Test Insert 
Configured Cascaded Definition with Template</a><br/>
     <a href="testinsertdefinition_cascaded_list.jsp">Test Insert Configured 
Cascaded Definition with List</a><br/>
     <a href="testinsertdefinition_reversed.jsp">Test Insert Configured 
Definition with Reversed Attribute</a><br/>
-    <a href="testinsertdefinition_reversed_explicit.jsp">Test Insert 
Configured Definition with Reversed Explicit Attribute</a><br/>
     <a href="testinsertdefinition_attribute_preparer.jsp">Test Insert 
Configured Definition with Attribute Preparer</a><br/>
     <a href="testinsertnesteddefinition.jsp">Test Insert Nested 
Definition</a><br/>
     <a href="testinsertnesteddefinition_tags.jsp">Test Insert Nested 
Definition only using JSP tags</a><br/>
@@ -99,7 +98,6 @@
     <a href="testput_cascaded_template.jsp">Test Put Tag with Cascaded 
Attributes and Template</a><br/>
     <a href="testput_el_singleeval.jsp">Test Put Tag using EL to test Single 
Evaluation</a><br/>
     <a href="testput_reversed.jsp">Test Put Tag with Reversed 
Attribute</a><br/>
-    <a href="testput_reversed_explicit.jsp">Test Put Tag with Reversed 
Explicit Attribute</a><br/>
     <a href="testputlist_cascaded.jsp">Test Put List Cascaded Tag</a><br/>
     <a href="testputlist_inherit.jsp">Test Put List Tag with Inherit</a><br/>
     <a href="testimportattribute_inherit.jsp">Test importAttribute Tag with 
List Inherit</a><br/>
@@ -173,7 +171,6 @@
     <a 
href="freemarker/testinsertdefinition_cascaded_template.ftl">FreeMarker: Test 
Insert Configured Cascaded Definition with Template</a><br/>
     <a href="freemarker/testinsertdefinition_cascaded_list.ftl">FreeMarker: 
Test Insert Configured Cascaded Definition with List</a><br/>
     <a href="freemarker/testinsertdefinition_reversed.ftl">FreeMarker: Test 
Insert Configured Definition with Reversed Attribute</a><br/>
-    <a 
href="freemarker/testinsertdefinition_reversed_explicit.ftl">FreeMarker: Test 
Insert Configured Definition with Reversed Explicit Attribute</a><br/>
     <a 
href="freemarker/testinsertdefinition_attribute_preparer.ftl">FreeMarker: Test 
Insert Configured Definition with Attribute Preparer</a><br/>
     <a href="freemarker/testinsertnesteddefinition.ftl">FreeMarker: Test 
Insert Nested Definition</a><br/>
     <a href="freemarker/testinsertnesteddefinition_tags.ftl">FreeMarker: Test 
Insert Nested Definition only using JSP tags</a><br/>
@@ -188,7 +185,6 @@
     <a href="freemarker/testput_cascaded_template.ftl">FreeMarker: Test Put 
Tag with Cascaded Attributes and Template</a><br/>
     <a href="freemarker/testput_el_singleeval.ftl">FreeMarker: Test Put Tag 
using EL to test Single Evaluation</a><br/>
     <a href="freemarker/testput_reversed.ftl">FreeMarker: Test Put Tag with 
Reversed Attribute</a><br/>
-    <a href="freemarker/testput_reversed_explicit.ftl">FreeMarker: Test Put 
Tag with Reversed Explicit Attribute</a><br/>
     <a href="freemarker/testputlist_cascaded.ftl">FreeMarker: Test Put List 
Cascaded Tag</a><br/>
     <a href="freemarker/testputlist_inherit.ftl">FreeMarker: Test Put List Tag 
with Inherit</a><br/>
     <a href="freemarker/testimportattribute_inherit.ftl">FreeMarker: Test 
importAttribute Tag with List Inherit</a><br/>
@@ -262,7 +258,6 @@
     <a href="velocity/testinsertdefinition_cascaded_template.vm">Velocity: 
Test Insert Configured Cascaded Definition with Template</a><br/>
     <a href="velocity/testinsertdefinition_cascaded_list.vm">Velocity: Test 
Insert Configured Cascaded Definition with List</a><br/>
     <a href="velocity/testinsertdefinition_reversed.vm">Velocity: Test Insert 
Configured Definition with Reversed Attribute</a><br/>
-    <a href="velocity/testinsertdefinition_reversed_explicit.vm">Velocity: 
Test Insert Configured Definition with Reversed Explicit Attribute</a><br/>
     <a href="velocity/testinsertdefinition_attribute_preparer.vm">Velocity: 
Test Insert Configured Definition with Attribute Preparer</a><br/>
     <a href="velocity/testinsertnesteddefinition.vm">Velocity: Test Insert 
Nested Definition</a><br/>
     <a href="velocity/testinsertnesteddefinition_tags.vm">Velocity: Test 
Insert Nested Definition only using JSP tags</a><br/>
@@ -277,7 +272,6 @@
     <a href="velocity/testput_cascaded_template.vm">Velocity: Test Put Tag 
with Cascaded Attributes and Template</a><br/>
     <a href="velocity/testput_el_singleeval.vm">Velocity: Test Put Tag using 
EL to test Single Evaluation</a><br/>
     <a href="velocity/testput_reversed.vm">Velocity: Test Put Tag with 
Reversed Attribute</a><br/>
-    <a href="velocity/testput_reversed_explicit.vm">Velocity: Test Put Tag 
with Reversed Explicit Attribute</a><br/>
     <a href="velocity/testputlist_cascaded.vm">Velocity: Test Put List 
Cascaded Tag</a><br/>
     <a href="velocity/testputlist_inherit.vm">Velocity: Test Put List Tag with 
Inherit</a><br/>
     <a href="velocity/testimportattribute_inherit.vm">Velocity: Test 
importAttribute Tag with List Inherit</a><br/>

Modified: 
tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/test/selenium/TestSuite.html
URL: 
http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/test/selenium/TestSuite.html?rev=1035061&r1=1035060&r2=1035061&view=diff
==============================================================================
--- 
tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/test/selenium/TestSuite.html
 (original)
+++ 
tiles/sandbox/trunk/tiles3/tiles-test-pom/tiles-test/src/test/selenium/TestSuite.html
 Sun Nov 14 20:32:50 2010
@@ -88,9 +88,6 @@
         <td><a href="ConfiguredDefinitionReversedTest.html">Configured 
Definition Reversed Test</a></td>
     </tr>
     <tr>
-        <td><a href="ConfiguredDefinitionReversedExplicitTest.html">Configured 
Definition Reversed Explicit Test</a></td>
-    </tr>
-    <tr>
         <td><a 
href="ConfiguredDefinitionAttributePreparerTest.html">Configured Definition 
Attribute Preparer Test</a></td>
     </tr>
     <tr>
@@ -151,9 +148,6 @@
         <td><a href="PutTagReversedTest.html">Put Tag Reversed Test</a></td>
     </tr>
     <tr>
-        <td><a href="PutTagReversedExplicitTest.html">Put Tag Reversed 
Explicit Test</a></td>
-    </tr>
-    <tr>
         <td><a href="PutTagNestedDefinitionTest.html">Put Tag with Nested 
Definition Test</a></td>
     </tr>
     <tr>
@@ -292,9 +286,6 @@
         <td><a 
href="freemarker/ConfiguredDefinitionReversedTest.html">FreeMarker: Configured 
Definition Reversed Test</a></td>
     </tr>
     <tr>
-        <td><a 
href="freemarker/ConfiguredDefinitionReversedExplicitTest.html">FreeMarker: 
Configured Definition Reversed Explicit Test</a></td>
-    </tr>
-    <tr>
         <td><a 
href="freemarker/ConfiguredDefinitionAttributePreparerTest.html">FreeMarker: 
Configured Definition Attribute Preparer Test</a></td>
     </tr>
     <tr>
@@ -355,9 +346,6 @@
         <td><a href="freemarker/PutTagReversedTest.html">FreeMarker: Put Tag 
Reversed Test</a></td>
     </tr>
     <tr>
-        <td><a href="freemarker/PutTagReversedExplicitTest.html">FreeMarker: 
Put Tag Reversed Explicit Test</a></td>
-    </tr>
-    <tr>
         <td><a href="freemarker/PutTagNestedDefinitionTest.html">FreeMarker: 
Put Tag with Nested Definition Test</a></td>
     </tr>
     <tr>
@@ -496,9 +484,6 @@
         <td><a href="velocity/ConfiguredDefinitionReversedTest.html">Velocity: 
Configured Definition Reversed Test</a></td>
     </tr>
     <tr>
-        <td><a 
href="velocity/ConfiguredDefinitionReversedExplicitTest.html">Velocity: 
Configured Definition Reversed Explicit Test</a></td>
-    </tr>
-    <tr>
         <td><a 
href="velocity/ConfiguredDefinitionAttributePreparerTest.html">Velocity: 
Configured Definition Attribute Preparer Test</a></td>
     </tr>
     <tr>
@@ -559,9 +544,6 @@
         <td><a href="velocity/PutTagReversedTest.html">Velocity: Put Tag 
Reversed Test</a></td>
     </tr>
     <tr>
-        <td><a href="velocity/PutTagReversedExplicitTest.html">Velocity: Put 
Tag Reversed Explicit Test</a></td>
-    </tr>
-    <tr>
         <td><a href="velocity/PutTagNestedDefinitionTest.html">Velocity: Put 
Tag with Nested Definition Test</a></td>
     </tr>
     <tr>


Reply via email to