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/06/24 16:08:34 UTC

svn commit: r788032 [3/3] - in /tiles/framework/trunk: src/site/apt/tutorial/advanced/ tiles-api/src/main/java/org/apache/tiles/ tiles-api/src/main/java/org/apache/tiles/reflect/ tiles-api/src/test/java/org/apache/tiles/ tiles-api/src/test/java/org/apa...

Added: tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/evaluator/mvel/TilesContextVariableResolverFactoryTest.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/evaluator/mvel/TilesContextVariableResolverFactoryTest.java?rev=788032&view=auto
==============================================================================
--- tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/evaluator/mvel/TilesContextVariableResolverFactoryTest.java (added)
+++ tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/evaluator/mvel/TilesContextVariableResolverFactoryTest.java Wed Jun 24 14:08:32 2009
@@ -0,0 +1,141 @@
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.tiles.evaluator.mvel;
+
+import static org.junit.Assert.*;
+import static org.easymock.EasyMock.*;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.tiles.TilesApplicationContext;
+import org.apache.tiles.context.TilesRequestContext;
+import org.apache.tiles.context.TilesRequestContextHolder;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.mvel2.integration.VariableResolver;
+
+/**
+ * Tests {@link TilesContextVariableResolverFactory}.
+ *
+ * @version $Rev$ $Date$
+ */
+public class TilesContextVariableResolverFactoryTest {
+
+    /**
+     * The Tiles request.
+     */
+    private TilesRequestContext request;
+
+    /**
+     * The Tiles application context.
+     */
+    private TilesApplicationContext applicationContext;
+
+    /**
+     * The object to test.
+     */
+    private TilesContextVariableResolverFactory factory;
+
+    /**
+     * Sets up the object.
+     */
+    @Before
+    public void setUp() {
+        request = createMock(TilesRequestContext.class);
+        TilesRequestContextHolder holder = new TilesRequestContextHolder();
+        holder.setTilesRequestContext(request);
+        applicationContext = createMock(TilesApplicationContext.class);
+        factory = new TilesContextVariableResolverFactory(holder);
+    }
+
+    /**
+     * Tears down the object.
+     */
+    @After
+    public void tearDown() {
+        verify(request, applicationContext);
+    }
+
+    /**
+     * Test method for {@link TilesContextVariableResolverFactory#createVariable(String, Object)}.
+     */
+    @Test(expected = UnsupportedOperationException.class)
+    public void testCreateVariableStringObject() {
+        replay(request, applicationContext);
+        factory.createVariable("myName", "myValue");
+    }
+
+    /**
+     * Test method for {@link TilesContextVariableResolverFactory#createVariable(String, Object, Class)}.
+     */
+    @Test(expected = UnsupportedOperationException.class)
+    public void testCreateVariableStringObjectClassOfQ() {
+        replay(request, applicationContext);
+        factory.createVariable("myName", "myValue", String.class);
+    }
+
+    /**
+     * Test method for {@link TilesContextVariableResolverFactory#isResolveable(String)}.
+     */
+    @Test
+    public void testIsResolveable() {
+        replay(request, applicationContext);
+        assertTrue(factory.isResolveable("header"));
+        assertTrue(factory.isResolveable("requestScope"));
+        assertTrue(factory.isResolveable("applicationScope"));
+        assertFalse(factory.isResolveable("blah"));
+    }
+
+    /**
+     * Test method for {@link TilesContextVariableResolverFactory#isTarget(String)}.
+     */
+    @Test
+    public void testIsTarget() {
+        replay(request, applicationContext);
+        assertTrue(factory.isTarget("header"));
+        assertTrue(factory.isTarget("requestScope"));
+        assertTrue(factory.isTarget("applicationScope"));
+        assertFalse(factory.isTarget("blah"));
+    }
+
+    /**
+     * Test method for {@link org.mvel2.integration.impl.BaseVariableResolverFactory#getVariableResolver(String)}.
+     */
+    @Test
+    public void testGetVariableResolver() {
+        Map<String, Object> requestScope = new HashMap<String, Object>();
+        requestScope.put("one", 1);
+        expect(request.getRequestScope()).andReturn(requestScope);
+        Map<String, Object> applicationScope = new HashMap<String, Object>();
+        applicationScope.put("two", 2);
+        expect(request.getApplicationContext()).andReturn(applicationContext);
+        expect(applicationContext.getApplicationScope()).andReturn(applicationScope);
+        replay(request, applicationContext);
+
+        VariableResolver resolver = factory.getVariableResolver("requestScope");
+        assertEquals(requestScope, resolver.getValue());
+        resolver = factory.getVariableResolver("applicationScope");
+        assertEquals(applicationScope, resolver.getValue());
+    }
+}

Propchange: tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/evaluator/mvel/TilesContextVariableResolverFactoryTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/evaluator/mvel/TilesContextVariableResolverFactoryTest.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Modified: tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/factory/BasicTilesContainerFactoryTest.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/factory/BasicTilesContainerFactoryTest.java?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/factory/BasicTilesContainerFactoryTest.java (original)
+++ tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/factory/BasicTilesContainerFactoryTest.java Wed Jun 24 14:08:32 2009
@@ -34,7 +34,7 @@
 import org.apache.tiles.definition.DefinitionsReader;
 import org.apache.tiles.definition.UrlDefinitionsFactory;
 import org.apache.tiles.definition.digester.DigesterDefinitionsReader;
-import org.apache.tiles.evaluator.AttributeEvaluator;
+import org.apache.tiles.evaluator.AttributeEvaluatorFactory;
 import org.apache.tiles.evaluator.impl.DirectAttributeEvaluator;
 import org.apache.tiles.impl.BasicTilesContainer;
 import org.apache.tiles.locale.LocaleResolver;
@@ -93,7 +93,7 @@
     }
 
     /**
-     * Tests {@link BasicTilesContainerFactory#createRequestContextFactory()}.
+     * Tests {@link BasicTilesContainerFactory#createRequestContextFactory(TilesApplicationContext)}.
      */
     public void testCreateRequestContextFactory() {
         TilesRequestContextFactory contextFactory = factory
@@ -103,8 +103,8 @@
     }
 
     /**
-     * Tests {@link BasicTilesContainerFactory#createDefinitionsFactory(TilesApplicationContext,
-     * TilesContextFactory, LocaleResolver)}.
+     * Tests {@link BasicTilesContainerFactory#createDefinitionsFactory(
+     * TilesApplicationContext, TilesRequestContextFactory, LocaleResolver)}.
      */
     public void testCreateDefinitionsFactory() {
         TilesRequestContextFactory requestContextFactory = factory
@@ -118,8 +118,8 @@
     }
 
     /**
-     * Tests {@link BasicTilesContainerFactory#createLocaleResolver(TilesApplicationContext,
-     * TilesContextFactory)}.
+     * Tests {@link BasicTilesContainerFactory#createLocaleResolver(
+     * TilesApplicationContext, TilesRequestContextFactory)}.
      */
     public void testCreateLocaleResolver() {
         TilesRequestContextFactory requestContextFactory = factory
@@ -131,8 +131,8 @@
     }
 
     /**
-     * Tests {@link BasicTilesContainerFactory#createDefinitionsReader(TilesApplicationContext,
-     * TilesContextFactory)}.
+     * Tests {@link BasicTilesContainerFactory#createDefinitionsReader(
+     * TilesApplicationContext, TilesRequestContextFactory)}.
      */
     public void testCreateDefinitionsReader() {
         TilesRequestContextFactory requestContextFactory = factory
@@ -145,7 +145,7 @@
 
     /**
      * Tests
-     * {@link BasicTilesContainerFactory#getSourceURLs(TilesApplicationContext, TilesContextFactory)}.
+     * {@link BasicTilesContainerFactory#getSourceURLs(TilesApplicationContext, TilesRequestContextFactory)}.
      */
     public void testGetSourceURLs() {
         TilesRequestContextFactory requestContextFactory = factory
@@ -157,23 +157,25 @@
 
     /**
      * Tests
-     * {@link BasicTilesContainerFactory#createEvaluator(TilesApplicationContext,
-     * TilesContextFactory, LocaleResolver)}.
+     * {@link BasicTilesContainerFactory#createAttributeEvaluatorFactory(
+     * TilesApplicationContext, TilesRequestContextFactory, LocaleResolver)}.
      */
-    public void testCreateEvaluator() {
+    public void testCreateAttributeEvaluatorFactory() {
         TilesRequestContextFactory requestContextFactory = factory
                 .createRequestContextFactory(applicationContext);
         LocaleResolver resolver = factory.createLocaleResolver(applicationContext,
                 requestContextFactory);
-        AttributeEvaluator evaluator = factory.createEvaluator(applicationContext,
-                requestContextFactory, resolver);
-        assertTrue("The class of the evaluator is not correct",
-                evaluator instanceof DirectAttributeEvaluator);
+        AttributeEvaluatorFactory attributeEvaluatorFactory = factory
+                .createAttributeEvaluatorFactory(applicationContext,
+                        requestContextFactory, resolver);
+        assertTrue(
+                "The class of the evaluator is not correct",
+                attributeEvaluatorFactory.getAttributeEvaluator((String) null) instanceof DirectAttributeEvaluator);
     }
 
     /**
      * Tests
-     * {@link BasicTilesContainerFactory#createPreparerFactory(TilesApplicationContext, TilesContextFactory)}.
+     * {@link BasicTilesContainerFactory#createPreparerFactory(TilesApplicationContext, TilesRequestContextFactory)}.
      */
     public void testCreatePreparerFactory() {
         TilesRequestContextFactory requestContextFactory = factory
@@ -185,8 +187,8 @@
     }
 
     /**
-     * Tests {@link BasicTilesContainerFactory#createRendererFactory(TilesApplicationContext,
-     * TilesContextFactory, TilesContainer, AttributeEvaluator)}.
+     * Tests {@link BasicTilesContainerFactory#createRendererFactory(
+     * TilesApplicationContext, TilesRequestContextFactory, TilesContainer, AttributeEvaluatorFactory)}.
      */
     public void testCreateRendererFactory() {
         TilesContainer container = factory.createContainer(applicationContext);
@@ -194,10 +196,12 @@
                 .createRequestContextFactory(applicationContext);
         LocaleResolver resolver = factory.createLocaleResolver(applicationContext,
                 requestContextFactory);
-        AttributeEvaluator evaluator = factory.createEvaluator(applicationContext,
-                requestContextFactory, resolver);
+        AttributeEvaluatorFactory attributeEvaluatorFactory = factory
+                .createAttributeEvaluatorFactory(applicationContext,
+                        requestContextFactory, resolver);
         RendererFactory rendererFactory = factory.createRendererFactory(
-                applicationContext, requestContextFactory, container, evaluator);
+                applicationContext, requestContextFactory, container,
+                attributeEvaluatorFactory);
         assertTrue("The class of the renderer factory is not correct",
                 rendererFactory instanceof BasicRendererFactory);
         AttributeRenderer renderer = rendererFactory.getRenderer("string");
@@ -215,8 +219,9 @@
     }
 
     /**
-     * Tests {@link BasicTilesContainerFactory#createDefaultAttributeRenderer(TilesApplicationContext,
-     * TilesContextFactory, TilesContainer, AttributeEvaluator)}.
+     * Tests
+     * {@link BasicTilesContainerFactory#createDefaultAttributeRenderer(TilesApplicationContext,
+     * TilesRequestContextFactory, TilesContainer, AttributeEvaluatorFactory)}.
      */
     public void testCreateDefaultAttributeRenderer() {
         TilesContainer container = factory.createContainer(applicationContext);
@@ -224,10 +229,12 @@
                 .createRequestContextFactory(applicationContext);
         LocaleResolver resolver = factory.createLocaleResolver(applicationContext,
                 requestContextFactory);
-        AttributeEvaluator evaluator = factory.createEvaluator(applicationContext,
+        AttributeEvaluatorFactory attributeEvaluatorFactory = factory
+        .createAttributeEvaluatorFactory(applicationContext,
                 requestContextFactory, resolver);
         AttributeRenderer renderer = factory.createDefaultAttributeRenderer(
-                applicationContext, requestContextFactory, container, evaluator);
+                applicationContext, requestContextFactory, container,
+                attributeEvaluatorFactory);
         assertTrue("The default renderer class is not correct",
                 renderer instanceof UntypedAttributeRenderer);
     }

Modified: tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/AbstractBaseAttributeRendererTest.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/AbstractBaseAttributeRendererTest.java?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/AbstractBaseAttributeRendererTest.java (original)
+++ tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/AbstractBaseAttributeRendererTest.java Wed Jun 24 14:08:32 2009
@@ -31,6 +31,7 @@
 import org.apache.tiles.TilesApplicationContext;
 import org.apache.tiles.context.TilesRequestContext;
 import org.apache.tiles.context.TilesRequestContextFactory;
+import org.apache.tiles.evaluator.BasicAttributeEvaluatorFactory;
 import org.apache.tiles.evaluator.impl.DirectAttributeEvaluator;
 import org.easymock.EasyMock;
 
@@ -50,12 +51,13 @@
     @Override
     protected void setUp() throws Exception {
         renderer = new MockAttributeRenderer();
-        renderer.setEvaluator(new DirectAttributeEvaluator());
+        renderer.setAttributeEvaluatorFactory(new BasicAttributeEvaluatorFactory(
+                new DirectAttributeEvaluator()));
     }
 
     /**
      * Tests
-     * {@link AbstractBaseAttributeRenderer#setContextFactory(TilesContextFactory)}.
+     * {@link AbstractBaseAttributeRenderer#setRequestContextFactory(TilesRequestContextFactory)}.
      */
     public void testSetContextFactory() {
         TilesRequestContextFactory contextFactory = EasyMock

Modified: tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/BasicRendererFactoryTest.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/BasicRendererFactoryTest.java?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/BasicRendererFactoryTest.java (original)
+++ tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/BasicRendererFactoryTest.java Wed Jun 24 14:08:32 2009
@@ -92,7 +92,7 @@
     }
 
     /**
-     * Tests {@link BasicRendererFactory#setContextFactory(TilesContextFactory)}.
+     * Tests {@link BasicRendererFactory#setRequestContextFactory(TilesRequestContextFactory)}.
      */
     public void testSetContextFactory() {
         assertNotNull("The context factory is null",

Modified: tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/DefinitionAttributeRendererTest.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/DefinitionAttributeRendererTest.java?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/DefinitionAttributeRendererTest.java (original)
+++ tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/DefinitionAttributeRendererTest.java Wed Jun 24 14:08:32 2009
@@ -23,16 +23,18 @@
 import java.io.IOException;
 import java.io.StringWriter;
 
+import junit.framework.TestCase;
+
 import org.apache.tiles.Attribute;
+import org.apache.tiles.Expression;
 import org.apache.tiles.TilesApplicationContext;
 import org.apache.tiles.TilesContainer;
 import org.apache.tiles.context.TilesRequestContext;
 import org.apache.tiles.context.TilesRequestContextFactory;
+import org.apache.tiles.evaluator.BasicAttributeEvaluatorFactory;
 import org.apache.tiles.evaluator.impl.DirectAttributeEvaluator;
 import org.easymock.EasyMock;
 
-import junit.framework.TestCase;
-
 /**
  * Tests {@link DefinitionAttributeRenderer}.
  *
@@ -49,7 +51,8 @@
     @Override
     protected void setUp() throws Exception {
         renderer = new DefinitionAttributeRenderer();
-        renderer.setEvaluator(new DirectAttributeEvaluator());
+        renderer.setAttributeEvaluatorFactory(new BasicAttributeEvaluatorFactory(
+                new DirectAttributeEvaluator()));
     }
 
     /**
@@ -60,7 +63,8 @@
      */
     public void testWrite() throws IOException {
         StringWriter writer = new StringWriter();
-        Attribute attribute = new Attribute("my.definition", null, null, "definition");
+        Attribute attribute = new Attribute("my.definition", (Expression) null,
+                null, "definition");
         TilesApplicationContext applicationContext = EasyMock
                 .createMock(TilesApplicationContext.class);
         TilesRequestContextFactory contextFactory = EasyMock

Modified: tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/StringAttributeRendererTest.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/StringAttributeRendererTest.java?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/StringAttributeRendererTest.java (original)
+++ tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/StringAttributeRendererTest.java Wed Jun 24 14:08:32 2009
@@ -23,15 +23,17 @@
 import java.io.IOException;
 import java.io.StringWriter;
 
+import junit.framework.TestCase;
+
 import org.apache.tiles.Attribute;
+import org.apache.tiles.Expression;
 import org.apache.tiles.TilesApplicationContext;
 import org.apache.tiles.context.TilesRequestContext;
 import org.apache.tiles.context.TilesRequestContextFactory;
+import org.apache.tiles.evaluator.BasicAttributeEvaluatorFactory;
 import org.apache.tiles.evaluator.impl.DirectAttributeEvaluator;
 import org.easymock.EasyMock;
 
-import junit.framework.TestCase;
-
 /**
  * Tests {@link StringAttributeRenderer}.
  *
@@ -48,7 +50,8 @@
     @Override
     protected void setUp() throws Exception {
         renderer = new StringAttributeRenderer();
-        renderer.setEvaluator(new DirectAttributeEvaluator());
+        renderer.setAttributeEvaluatorFactory(new BasicAttributeEvaluatorFactory(
+                new DirectAttributeEvaluator()));
     }
 
     /**
@@ -59,7 +62,8 @@
      */
     public void testWrite() throws IOException {
         StringWriter writer = new StringWriter();
-        Attribute attribute = new Attribute("Result", null, null, "string");
+        Attribute attribute = new Attribute("Result", (Expression) null, null,
+                "string");
         TilesApplicationContext applicationContext = EasyMock
                 .createMock(TilesApplicationContext.class);
         TilesRequestContextFactory contextFactory = EasyMock

Modified: tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/TemplateAttributeRendererTest.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/TemplateAttributeRendererTest.java?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/TemplateAttributeRendererTest.java (original)
+++ tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/TemplateAttributeRendererTest.java Wed Jun 24 14:08:32 2009
@@ -23,15 +23,17 @@
 import java.io.IOException;
 import java.io.StringWriter;
 
+import junit.framework.TestCase;
+
 import org.apache.tiles.Attribute;
+import org.apache.tiles.Expression;
 import org.apache.tiles.TilesApplicationContext;
 import org.apache.tiles.context.TilesRequestContext;
 import org.apache.tiles.context.TilesRequestContextFactory;
+import org.apache.tiles.evaluator.BasicAttributeEvaluatorFactory;
 import org.apache.tiles.evaluator.impl.DirectAttributeEvaluator;
 import org.easymock.EasyMock;
 
-import junit.framework.TestCase;
-
 /**
  * Tests {@link TemplateAttributeRenderer}.
  *
@@ -48,7 +50,8 @@
     @Override
     protected void setUp() throws Exception {
         renderer = new TemplateAttributeRenderer();
-        renderer.setEvaluator(new DirectAttributeEvaluator());
+        renderer.setAttributeEvaluatorFactory(new BasicAttributeEvaluatorFactory(
+                new DirectAttributeEvaluator()));
     }
 
     /**
@@ -59,7 +62,8 @@
      */
     public void testWrite() throws IOException {
         StringWriter writer = new StringWriter();
-        Attribute attribute = new Attribute("/myTemplate.jsp", null, null, "template");
+        Attribute attribute = new Attribute("/myTemplate.jsp",
+                (Expression) null, null, "template");
         TilesApplicationContext applicationContext = EasyMock
                 .createMock(TilesApplicationContext.class);
         TilesRequestContextFactory contextFactory = EasyMock

Modified: tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/UntypedAttributeRendererTest.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/UntypedAttributeRendererTest.java?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/UntypedAttributeRendererTest.java (original)
+++ tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/renderer/impl/UntypedAttributeRendererTest.java Wed Jun 24 14:08:32 2009
@@ -23,16 +23,18 @@
 import java.io.IOException;
 import java.io.StringWriter;
 
+import junit.framework.TestCase;
+
 import org.apache.tiles.Attribute;
+import org.apache.tiles.Expression;
 import org.apache.tiles.TilesApplicationContext;
 import org.apache.tiles.TilesContainer;
 import org.apache.tiles.context.TilesRequestContext;
 import org.apache.tiles.context.TilesRequestContextFactory;
+import org.apache.tiles.evaluator.BasicAttributeEvaluatorFactory;
 import org.apache.tiles.evaluator.impl.DirectAttributeEvaluator;
 import org.easymock.EasyMock;
 
-import junit.framework.TestCase;
-
 /**
  * Tests {@link UntypedAttributeRenderer}.
  *
@@ -49,7 +51,8 @@
     @Override
     protected void setUp() throws Exception {
         renderer = new UntypedAttributeRenderer();
-        renderer.setEvaluator(new DirectAttributeEvaluator());
+        renderer.setAttributeEvaluatorFactory(new BasicAttributeEvaluatorFactory(
+                new DirectAttributeEvaluator()));
     }
 
     /**
@@ -61,7 +64,8 @@
      */
     public void testWriteDefinition() throws IOException {
         StringWriter writer = new StringWriter();
-        Attribute attribute = new Attribute("my.definition", null, null, "definition");
+        Attribute attribute = new Attribute("my.definition", (Expression) null,
+                null, "definition");
         TilesApplicationContext applicationContext = EasyMock
                 .createMock(TilesApplicationContext.class);
         TilesRequestContextFactory contextFactory = EasyMock
@@ -94,7 +98,8 @@
      */
     public void testWriteString() throws IOException {
         StringWriter writer = new StringWriter();
-        Attribute attribute = new Attribute("Result", null, null, "string");
+        Attribute attribute = new Attribute("Result", (Expression) null, null,
+                "string");
         TilesApplicationContext applicationContext = EasyMock
                 .createMock(TilesApplicationContext.class);
         TilesRequestContextFactory contextFactory = EasyMock
@@ -127,7 +132,8 @@
      */
     public void testWriteTemplate() throws IOException {
         StringWriter writer = new StringWriter();
-        Attribute attribute = new Attribute("/myTemplate.jsp", null, null, "template");
+        Attribute attribute = new Attribute("/myTemplate.jsp",
+                (Expression) null, null, "template");
         TilesApplicationContext applicationContext = EasyMock
                 .createMock(TilesApplicationContext.class);
         TilesRequestContextFactory contextFactory = EasyMock

Modified: tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/AddAttributeModel.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/AddAttributeModel.java?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/AddAttributeModel.java (original)
+++ tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/AddAttributeModel.java Wed Jun 24 14:08:32 2009
@@ -24,6 +24,7 @@
 import java.util.Stack;
 
 import org.apache.tiles.Attribute;
+import org.apache.tiles.Expression;
 import org.apache.tiles.ListAttribute;
 
 /**
@@ -128,7 +129,8 @@
             attribute.setValue(body);
         }
         if (expression != null) {
-            attribute.setExpression(expression);
+            attribute.setExpressionObject(Expression
+                    .createExpressionFromDescribedExpression(expression));
         }
         if (role != null) {
             attribute.setRole(role);

Modified: tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/DefaultAttributeResolver.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/DefaultAttributeResolver.java?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/DefaultAttributeResolver.java (original)
+++ tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/DefaultAttributeResolver.java Wed Jun 24 14:08:32 2009
@@ -23,6 +23,7 @@
 
 import org.apache.tiles.Attribute;
 import org.apache.tiles.AttributeContext;
+import org.apache.tiles.Expression;
 import org.apache.tiles.TilesContainer;
 
 /**
@@ -72,8 +73,8 @@
             if (defaultValue instanceof Attribute) {
                 attribute = (Attribute) defaultValue;
             } else if (defaultValue instanceof String) {
-                attribute = new Attribute(defaultValue,
-                        null, defaultValueRole, defaultValueType);
+                attribute = new Attribute(defaultValue, (Expression) null,
+                        defaultValueRole, defaultValueType);
             }
         }
         return attribute;

Modified: tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/InsertTemplateModel.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/InsertTemplateModel.java?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/InsertTemplateModel.java (original)
+++ tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/InsertTemplateModel.java Wed Jun 24 14:08:32 2009
@@ -23,6 +23,7 @@
 
 import org.apache.tiles.Attribute;
 import org.apache.tiles.AttributeContext;
+import org.apache.tiles.Expression;
 import org.apache.tiles.TilesContainer;
 
 /**
@@ -100,7 +101,9 @@
             if (templateType != null) {
                 templateAttribute.setRenderer(templateType);
             }
-            templateAttribute.setExpression(templateExpression);
+            templateAttribute
+                    .setExpressionObject(Expression
+                            .createExpressionFromDescribedExpression(templateExpression));
             attributeContext.setPreparer(preparer);
             attributeContext.setTemplateAttribute(templateAttribute);
             container.renderContext(requestItems);

Modified: tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/PutAttributeModel.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/PutAttributeModel.java?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/PutAttributeModel.java (original)
+++ tiles/framework/trunk/tiles-template/src/main/java/org/apache/tiles/template/PutAttributeModel.java Wed Jun 24 14:08:32 2009
@@ -25,6 +25,7 @@
 
 import org.apache.tiles.Attribute;
 import org.apache.tiles.AttributeContext;
+import org.apache.tiles.Expression;
 import org.apache.tiles.TilesContainer;
 
 /**
@@ -168,7 +169,8 @@
             attribute.setValue(body);
         }
         if (expression != null) {
-            attribute.setExpression(expression);
+            attribute.setExpressionObject(Expression
+                    .createExpressionFromDescribedExpression(expression));
         }
         if (role != null) {
             attribute.setRole(role);

Modified: tiles/framework/trunk/tiles-template/src/test/java/org/apache/tiles/template/AddAttributeModelTest.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-template/src/test/java/org/apache/tiles/template/AddAttributeModelTest.java?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-template/src/test/java/org/apache/tiles/template/AddAttributeModelTest.java (original)
+++ tiles/framework/trunk/tiles-template/src/test/java/org/apache/tiles/template/AddAttributeModelTest.java Wed Jun 24 14:08:32 2009
@@ -81,10 +81,12 @@
         composeStack.push(listAttribute);
         composeStack.push(attribute);
 
-        model.end(composeStack, "myValue", "myExpression", "myBody", "myRole", "myType");
+        model.end(composeStack, "myValue", "myExpression", "myBody", "myRole",
+                "myType");
         assertEquals(1, ((List<Attribute>) listAttribute.getValue()).size());
         assertEquals("myValue", attribute.getValue());
-        assertEquals("myExpression", attribute.getExpression());
+        assertEquals("myExpression", attribute.getExpressionObject()
+                .getExpression());
         assertEquals("myRole", attribute.getRole());
         assertEquals("myType", attribute.getRenderer());
 
@@ -94,10 +96,12 @@
         composeStack.push(listAttribute);
         composeStack.push(attribute);
 
-        model.end(composeStack, null, "myExpression", "myBody", "myRole", "myType");
+        model.end(composeStack, null, "myExpression", "myBody", "myRole",
+                "myType");
         assertEquals(1, ((List<Attribute>) listAttribute.getValue()).size());
         assertEquals("myBody", attribute.getValue());
-        assertEquals("myExpression", attribute.getExpression());
+        assertEquals("myExpression", attribute.getExpressionObject()
+                .getExpression());
         assertEquals("myRole", attribute.getRole());
         assertEquals("myType", attribute.getRenderer());
     }
@@ -115,12 +119,13 @@
         Attribute attribute;
         composeStack.push(listAttribute);
 
-        model.execute(composeStack, "myValue", "myExpression", "myBody", "myRole", "myType");
+        model.execute(composeStack, "myValue", "myExpression", "myBody",
+                "myRole", "myType");
         List<Attribute> attributes = (List<Attribute>) listAttribute.getValue();
         assertEquals(1, attributes.size());
         attribute = attributes.iterator().next();
         assertEquals("myValue", attribute.getValue());
-        assertEquals("myExpression", attribute.getExpression());
+        assertEquals("myExpression", attribute.getExpressionObject().getExpression());
         assertEquals("myRole", attribute.getRole());
         assertEquals("myType", attribute.getRenderer());
 
@@ -130,12 +135,14 @@
         composeStack.push(listAttribute);
         composeStack.push(attribute);
 
-        model.execute(composeStack, null, "myExpression", "myBody", "myRole", "myType");
+        model.execute(composeStack, null, "myExpression", "myBody", "myRole",
+                "myType");
         attributes = (List<Attribute>) listAttribute.getValue();
         assertEquals(1, attributes.size());
         attribute = attributes.iterator().next();
         assertEquals("myBody", attribute.getValue());
-        assertEquals("myExpression", attribute.getExpression());
+        assertEquals("myExpression", attribute.getExpressionObject()
+                .getExpression());
         assertEquals("myRole", attribute.getRole());
         assertEquals("myType", attribute.getRenderer());
     }

Modified: tiles/framework/trunk/tiles-template/src/test/java/org/apache/tiles/template/DefaultAttributeResolverTest.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-template/src/test/java/org/apache/tiles/template/DefaultAttributeResolverTest.java?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-template/src/test/java/org/apache/tiles/template/DefaultAttributeResolverTest.java (original)
+++ tiles/framework/trunk/tiles-template/src/test/java/org/apache/tiles/template/DefaultAttributeResolverTest.java Wed Jun 24 14:08:32 2009
@@ -26,6 +26,7 @@
 
 import org.apache.tiles.Attribute;
 import org.apache.tiles.AttributeContext;
+import org.apache.tiles.Expression;
 import org.apache.tiles.TilesContainer;
 import org.junit.Before;
 import org.junit.Test;
@@ -60,7 +61,8 @@
     public void testComputeAttributeInContext() {
         TilesContainer container = createMock(TilesContainer.class);
         AttributeContext attributeContext = createMock(AttributeContext.class);
-        Attribute attribute = new Attribute("myValue", "myExpression", "myRole", "myRenderer");
+        Attribute attribute = new Attribute("myValue", Expression
+                .createExpression("myExpression", null), "myRole", "myRenderer");
         Integer requestItem = new Integer(1);
 
         expect(container.getAttributeContext(requestItem)).andReturn(attributeContext);
@@ -81,7 +83,8 @@
     @Test
     public void testComputeAttributeInCall() {
         TilesContainer container = createMock(TilesContainer.class);
-        Attribute attribute = new Attribute("myValue", "myExpression", "myRole", "myRenderer");
+        Attribute attribute = new Attribute("myValue", Expression
+                .createExpression("myExpression", null), "myRole", "myRenderer");
         Integer requestItem = new Integer(1);
 
         replay(container);

Modified: tiles/framework/trunk/tiles-template/src/test/java/org/apache/tiles/template/InsertTemplateModelTest.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-template/src/test/java/org/apache/tiles/template/InsertTemplateModelTest.java?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-template/src/test/java/org/apache/tiles/template/InsertTemplateModelTest.java (original)
+++ tiles/framework/trunk/tiles-template/src/test/java/org/apache/tiles/template/InsertTemplateModelTest.java Wed Jun 24 14:08:32 2009
@@ -83,7 +83,9 @@
         container.renderContext(requestItem);
 
         replay(container, attributeContext);
-        model.end(container, "myTemplate", "myTemplateType", "myTemplateExpression", "myRole", "myPreparer", requestItem);
+        model.end(container, "myTemplate", "myTemplateType",
+                "myTemplateExpression", "myRole", "myPreparer",
+                requestItem);
         verify(container, attributeContext);
     }
 
@@ -105,7 +107,9 @@
         container.renderContext(requestItem);
 
         replay(container, attributeContext);
-        model.execute(container, "myTemplate", "myTemplateType", "myTemplateExpression", "myRole", "myPreparer", requestItem);
+        model.execute(container, "myTemplate", "myTemplateType",
+                "myTemplateExpression", "myRole",
+                "myPreparer", requestItem);
         verify(container, attributeContext);
     }
 

Modified: tiles/framework/trunk/tiles-template/src/test/java/org/apache/tiles/template/PutAttributeModelTest.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-template/src/test/java/org/apache/tiles/template/PutAttributeModelTest.java?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-template/src/test/java/org/apache/tiles/template/PutAttributeModelTest.java (original)
+++ tiles/framework/trunk/tiles-template/src/test/java/org/apache/tiles/template/PutAttributeModelTest.java Wed Jun 24 14:08:32 2009
@@ -88,7 +88,8 @@
         model.end(container, composeStack, "myName", "myValue", "myExpression",
                 "myBody", "myRole", "myType", false, requestItem);
         assertEquals("myValue", attribute.getValue());
-        assertEquals("myExpression", attribute.getExpression());
+        assertEquals("myExpression", attribute.getExpressionObject()
+                .getExpression());
         assertEquals("myRole", attribute.getRole());
         assertEquals("myType", attribute.getRenderer());
         verify(container, attributeContext);
@@ -115,7 +116,8 @@
         model.end(container, composeStack, "myName", "myValue", "myExpression",
                 "myBody", "myRole", "myType", false, requestItem);
         assertEquals("myValue", attribute.getValue());
-        assertEquals("myExpression", attribute.getExpression());
+        assertEquals("myExpression", attribute.getExpressionObject()
+                .getExpression());
         assertEquals("myRole", attribute.getRole());
         assertEquals("myType", attribute.getRenderer());
         verify(container, attributeContext);

Modified: tiles/framework/trunk/tiles-test/pom.xml
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/pom.xml?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-test/pom.xml (original)
+++ tiles/framework/trunk/tiles-test/pom.xml Wed Jun 24 14:08:32 2009
@@ -112,6 +112,11 @@
         <artifactId>spring-web</artifactId>
         <version>2.5.6</version>
       </dependency>
+      <dependency>
+      	<groupId>org.mvel</groupId>
+      	<artifactId>mvel2</artifactId>
+      	<version>2.0.9</version>
+      </dependency>
    </dependencies>
 
    <build>

Modified: tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/factory/TestTilesContainerFactory.java
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/factory/TestTilesContainerFactory.java?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/factory/TestTilesContainerFactory.java (original)
+++ tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/factory/TestTilesContainerFactory.java Wed Jun 24 14:08:32 2009
@@ -39,12 +39,17 @@
 import org.apache.tiles.compat.definition.digester.CompatibilityDigesterDefinitionsReader;
 import org.apache.tiles.context.ChainedTilesRequestContextFactory;
 import org.apache.tiles.context.TilesRequestContextFactory;
+import org.apache.tiles.context.TilesRequestContextHolder;
 import org.apache.tiles.definition.DefinitionsFactoryException;
 import org.apache.tiles.definition.DefinitionsReader;
-import org.apache.tiles.evaluator.AttributeEvaluator;
+import org.apache.tiles.evaluator.AttributeEvaluatorFactory;
+import org.apache.tiles.evaluator.BasicAttributeEvaluatorFactory;
 import org.apache.tiles.evaluator.el.ELAttributeEvaluator;
 import org.apache.tiles.evaluator.el.TilesContextBeanELResolver;
 import org.apache.tiles.evaluator.el.TilesContextELResolver;
+import org.apache.tiles.evaluator.mvel.MVELAttributeEvaluator;
+import org.apache.tiles.evaluator.mvel.TilesContextBeanVariableResolverFactory;
+import org.apache.tiles.evaluator.mvel.TilesContextVariableResolverFactory;
 import org.apache.tiles.factory.BasicTilesContainerFactory;
 import org.apache.tiles.freemarker.context.FreeMarkerTilesRequestContextFactory;
 import org.apache.tiles.freemarker.renderer.FreeMarkerAttributeRenderer;
@@ -56,6 +61,7 @@
 import org.apache.tiles.test.renderer.ReverseStringAttributeRenderer;
 import org.apache.tiles.velocity.context.VelocityTilesRequestContextFactory;
 import org.apache.tiles.velocity.renderer.VelocityAttributeRenderer;
+import org.mvel2.integration.VariableResolverFactory;
 
 
 /**
@@ -66,6 +72,11 @@
 public class TestTilesContainerFactory extends BasicTilesContainerFactory {
 
     /**
+     * The number of registered factories.
+     */
+    private static final int FACTORY_SIZE = 4;
+
+    /**
      * The number of URLs to load..
      */
     private static final int URL_COUNT = 7;
@@ -82,10 +93,11 @@
      * @param contextFactory The request context factory to use.
      * @since 2.1.1
      */
+    @Override
     protected void registerChainedRequestContextFactories(
             ChainedTilesRequestContextFactory contextFactory) {
         List<TilesRequestContextFactory> factories = new ArrayList<TilesRequestContextFactory>(
-                3);
+                FACTORY_SIZE);
         registerRequestContextFactory(
                 "org.apache.tiles.servlet.context.ServletTilesRequestContextFactory",
                 factories, contextFactory);
@@ -104,20 +116,22 @@
     /** {@inheritDoc} */
     @Override
     protected void registerAttributeRenderers(
-            BasicRendererFactory rendererFactory, TilesApplicationContext applicationContext,
+            BasicRendererFactory rendererFactory,
+            TilesApplicationContext applicationContext,
             TilesRequestContextFactory contextFactory,
-            TilesContainer container, AttributeEvaluator evaluator) {
+            TilesContainer container,
+            AttributeEvaluatorFactory attributeEvaluatorFactory) {
         super.registerAttributeRenderers(rendererFactory, applicationContext, contextFactory,
-                container, evaluator);
+                container, attributeEvaluatorFactory);
         ReverseStringAttributeRenderer renderer = new ReverseStringAttributeRenderer();
         renderer.setApplicationContext(applicationContext);
         renderer.setRequestContextFactory(contextFactory);
-        renderer.setEvaluator(evaluator);
+        renderer.setAttributeEvaluatorFactory(attributeEvaluatorFactory);
         rendererFactory.registerRenderer("reversed", renderer);
 
         FreeMarkerAttributeRenderer freemarkerRenderer = new FreeMarkerAttributeRenderer();
         freemarkerRenderer.setApplicationContext(applicationContext);
-        freemarkerRenderer.setEvaluator(evaluator);
+        freemarkerRenderer.setAttributeEvaluatorFactory(attributeEvaluatorFactory);
         freemarkerRenderer.setRequestContextFactory(contextFactory);
         freemarkerRenderer.setParameter("TemplatePath", "/");
         freemarkerRenderer.setParameter("NoCache", "true");
@@ -130,7 +144,7 @@
 
         VelocityAttributeRenderer velocityRenderer = new VelocityAttributeRenderer();
         velocityRenderer.setApplicationContext(applicationContext);
-        velocityRenderer.setEvaluator(evaluator);
+        velocityRenderer.setAttributeEvaluatorFactory(attributeEvaluatorFactory);
         velocityRenderer.setRequestContextFactory(contextFactory);
         velocityRenderer.setParameter("org.apache.velocity.toolbox", "/WEB-INF/tools.xml");
         velocityRenderer.setParameter("org.apache.velocity.properties", "/WEB-INF/velocity.properties");
@@ -140,9 +154,25 @@
 
     /** {@inheritDoc} */
     @Override
-    protected AttributeEvaluator createEvaluator(TilesApplicationContext applicationContext,
-            TilesRequestContextFactory contextFactory,
-            LocaleResolver resolver) {
+    protected AttributeEvaluatorFactory createAttributeEvaluatorFactory(
+            TilesApplicationContext applicationContext,
+            TilesRequestContextFactory contextFactory, LocaleResolver resolver) {
+        BasicAttributeEvaluatorFactory attributeEvaluatorFactory = new BasicAttributeEvaluatorFactory(
+                createELEvaluator(applicationContext));
+        attributeEvaluatorFactory.registerAttributeEvaluator("MVEL",
+                createMVELEvaluator());
+
+        return attributeEvaluatorFactory;
+    }
+
+    /**
+     * Creates the EL evaluator.
+     *
+     * @param applicationContext The Tiles application context.
+     * @return The EL evaluator.
+     */
+    private ELAttributeEvaluator createELEvaluator(
+            TilesApplicationContext applicationContext) {
         ELAttributeEvaluator evaluator = new ELAttributeEvaluator();
         evaluator.setApplicationContext(applicationContext);
         MultiversionExpressionFactoryFactory efFactory = new MultiversionExpressionFactoryFactory();
@@ -160,10 +190,26 @@
             }
         };
         evaluator.setResolver(elResolver);
-
         return evaluator;
     }
 
+    /**
+     * Creates the MVEL evaluator.
+     *
+     * @return The MVEL evaluator.
+     */
+    private MVELAttributeEvaluator createMVELEvaluator() {
+        TilesRequestContextHolder requestHolder = new TilesRequestContextHolder();
+        VariableResolverFactory variableResolverFactory = new TilesContextVariableResolverFactory(
+                requestHolder);
+        variableResolverFactory
+                .setNextFactory(new TilesContextBeanVariableResolverFactory(
+                        requestHolder));
+        MVELAttributeEvaluator mvelEvaluator = new MVELAttributeEvaluator(requestHolder,
+                variableResolverFactory);
+        return mvelEvaluator;
+    }
+
     /** {@inheritDoc} */
     @Override
     protected List<URL> getSourceURLs(TilesApplicationContext applicationContext,

Modified: tiles/framework/trunk/tiles-test/src/main/webapp/WEB-INF/freemarker/tiles-defs.xml
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/src/main/webapp/WEB-INF/freemarker/tiles-defs.xml?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-test/src/main/webapp/WEB-INF/freemarker/tiles-defs.xml (original)
+++ tiles/framework/trunk/tiles-test/src/main/webapp/WEB-INF/freemarker/tiles-defs.xml Wed Jun 24 14:08:32 2009
@@ -221,6 +221,13 @@
       <put-attribute name="body"   expression="${requestScope.body}"/>
   </definition>
 
+  <definition name="freemarker.test.composite.mvel.definition" templateExpression="MVEL:layout"
+        preparer="org.apache.tiles.test.preparer.RequestSettingViewPreparer">
+      <put-attribute name="title"  value="This is a configured composite definition."/>
+      <put-attribute name="header" value="/freemarker/header.ftl" type="freemarker" />
+      <put-attribute name="body"   expression="MVEL:requestScope.body"/>
+  </definition>
+
   <definition name="freemarker.test.composite.el.doNotShow.definition" templateExpression="${layout}"
         preparer="org.apache.tiles.test.preparer.RequestSettingViewPreparer">
       <put-attribute name="title"  value="This is a configured definition."/>

Modified: tiles/framework/trunk/tiles-test/src/main/webapp/WEB-INF/tiles-defs.xml
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/src/main/webapp/WEB-INF/tiles-defs.xml?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-test/src/main/webapp/WEB-INF/tiles-defs.xml (original)
+++ tiles/framework/trunk/tiles-test/src/main/webapp/WEB-INF/tiles-defs.xml Wed Jun 24 14:08:32 2009
@@ -118,7 +118,7 @@
     <definition name="testdispatchservlet" extends="test.definition"/>
 
   <definition name="preparer.definition.configured" extends="preparer.definition" preparer="org.apache.tiles.test.preparer.TestViewPreparer" />
-  
+
   <definition name="test.localized.definition" template="/layout.jsp">
       <put-attribute name="title" value="Default locale" />
       <put-attribute name="header" value="/header.jsp" />
@@ -233,6 +233,13 @@
       <put-attribute name="body"   expression="${requestScope.body}"/>
   </definition>
 
+  <definition name="test.composite.mvel.definition" templateExpression="MVEL:layout"
+        preparer="org.apache.tiles.test.preparer.RequestSettingViewPreparer">
+      <put-attribute name="title"  value="This is a configured composite definition."/>
+      <put-attribute name="header" value="/header.jsp"/>
+      <put-attribute name="body"   expression="MVEL:requestScope.body"/>
+  </definition>
+
   <definition name="test.composite.el.doNotShow.definition" templateExpression="${layout}"
         preparer="org.apache.tiles.test.preparer.RequestSettingViewPreparer">
       <put-attribute name="title"  value="This is a configured definition."/>

Modified: tiles/framework/trunk/tiles-test/src/main/webapp/WEB-INF/velocity/tiles-defs.xml
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/src/main/webapp/WEB-INF/velocity/tiles-defs.xml?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-test/src/main/webapp/WEB-INF/velocity/tiles-defs.xml (original)
+++ tiles/framework/trunk/tiles-test/src/main/webapp/WEB-INF/velocity/tiles-defs.xml Wed Jun 24 14:08:32 2009
@@ -221,6 +221,13 @@
       <put-attribute name="body"   expression="${requestScope.body}"/>
   </definition>
 
+  <definition name="velocity.test.composite.mvel.definition" templateExpression="MVEL:layout"
+        preparer="org.apache.tiles.test.preparer.RequestSettingViewPreparer">
+      <put-attribute name="title"  value="This is a configured composite definition."/>
+      <put-attribute name="header" value="/velocity/header.vm" type="velocity" />
+      <put-attribute name="body"   expression="MVEL:requestScope.body"/>
+  </definition>
+
   <definition name="velocity.test.composite.el.doNotShow.definition" templateExpression="${layout}"
         preparer="org.apache.tiles.test.preparer.RequestSettingViewPreparer">
       <put-attribute name="title"  value="This is a configured definition."/>

Added: tiles/framework/trunk/tiles-test/src/main/webapp/freemarker/testinsertdefinition_mvel.ftl
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/src/main/webapp/freemarker/testinsertdefinition_mvel.ftl?rev=788032&view=auto
==============================================================================
--- tiles/framework/trunk/tiles-test/src/main/webapp/freemarker/testinsertdefinition_mvel.ftl (added)
+++ tiles/framework/trunk/tiles-test/src/main/webapp/freemarker/testinsertdefinition_mvel.ftl Wed Jun 24 14:08:32 2009
@@ -0,0 +1,24 @@
+<#--
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+-->
+<@tiles.insertDefinition name="freemarker.test.composite.mvel.definition" />

Propchange: tiles/framework/trunk/tiles-test/src/main/webapp/freemarker/testinsertdefinition_mvel.ftl
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tiles/framework/trunk/tiles-test/src/main/webapp/freemarker/testinsertdefinition_mvel.ftl
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Modified: tiles/framework/trunk/tiles-test/src/main/webapp/index.jsp
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/src/main/webapp/index.jsp?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-test/src/main/webapp/index.jsp (original)
+++ tiles/framework/trunk/tiles-test/src/main/webapp/index.jsp Wed Jun 24 14:08:32 2009
@@ -91,6 +91,7 @@
     <a href="testinsertnestedlistdefinition.jsp">Test Insert Nested List Definition</a><br/>
     <a href="testinsertnestedlistdefinition_tags.jsp">Test Insert Nested List Definition only using JSP tags</a><br/>
     <a href="testinsertdefinition_el.jsp">Test Insert Configured Definition with EL</a><br/>
+    <a href="testinsertdefinition_mvel.jsp">Test Insert Configured Definition with MVEL</a><br/>
     <a href="testinsertdefinition_el_singleeval.jsp">Test Insert Configured Definition with EL to test Single Evaluation</a><br/>
     <a href="testinsertdefinition_wildcard.jsp">Test Insert Configured Definition with Wildcards</a><br/>
     <a href="testinsertdefinition_defaultvalues.jsp">Test Insert Configured Definition with Default Values</a><br/>
@@ -173,6 +174,7 @@
     <a href="freemarker/testinsertnestedlistdefinition.ftl">FreeMarker: Test Insert Nested List Definition</a><br/>
     <a href="freemarker/testinsertnestedlistdefinition_tags.ftl">FreeMarker: Test Insert Nested List Definition only using JSP tags</a><br/>
     <a href="freemarker/testinsertdefinition_el.ftl">FreeMarker: Test Insert Configured Definition with EL</a><br/>
+    <a href="freemarker/testinsertdefinition_mvel.ftl">FreeMarker: Test Insert Configured Definition with MVEL</a><br/>
     <a href="freemarker/testinsertdefinition_el_singleeval.ftl">FreeMarker: Test Insert Configured Definition with EL to test Single Evaluation</a><br/>
     <a href="freemarker/testinsertdefinition_wildcard.ftl">FreeMarker: Test Insert Configured Definition with Wildcards</a><br/>
     <a href="freemarker/testinsertdefinition_defaultvalues.ftl">FreeMarker: Test Insert Configured Definition with Default Values</a><br/>
@@ -255,6 +257,7 @@
     <a href="velocity/testinsertnestedlistdefinition.vm">Velocity: Test Insert Nested List Definition</a><br/>
     <a href="velocity/testinsertnestedlistdefinition_tags.vm">Velocity: Test Insert Nested List Definition only using JSP tags</a><br/>
     <a href="velocity/testinsertdefinition_el.vm">Velocity: Test Insert Configured Definition with EL</a><br/>
+    <a href="velocity/testinsertdefinition_mvel.vm">Velocity: Test Insert Configured Definition with MVEL</a><br/>
     <a href="velocity/testinsertdefinition_el_singleeval.vm">Velocity: Test Insert Configured Definition with EL to test Single Evaluation</a><br/>
     <a href="velocity/testinsertdefinition_wildcard.vm">Velocity: Test Insert Configured Definition with Wildcards</a><br/>
     <a href="velocity/testinsertdefinition_defaultvalues.vm">Velocity: Test Insert Configured Definition with Default Values</a><br/>

Added: tiles/framework/trunk/tiles-test/src/main/webapp/testinsertdefinition_mvel.jsp
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/src/main/webapp/testinsertdefinition_mvel.jsp?rev=788032&view=auto
==============================================================================
--- tiles/framework/trunk/tiles-test/src/main/webapp/testinsertdefinition_mvel.jsp (added)
+++ tiles/framework/trunk/tiles-test/src/main/webapp/testinsertdefinition_mvel.jsp Wed Jun 24 14:08:32 2009
@@ -0,0 +1,27 @@
+<%@ page session="false" %>
+<%--
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+--%>
+<%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles" %>
+
+<tiles:insertDefinition name="test.composite.mvel.definition" />

Propchange: tiles/framework/trunk/tiles-test/src/main/webapp/testinsertdefinition_mvel.jsp
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tiles/framework/trunk/tiles-test/src/main/webapp/testinsertdefinition_mvel.jsp
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: tiles/framework/trunk/tiles-test/src/main/webapp/velocity/testinsertdefinition_mvel.vm
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/src/main/webapp/velocity/testinsertdefinition_mvel.vm?rev=788032&view=auto
==============================================================================
--- tiles/framework/trunk/tiles-test/src/main/webapp/velocity/testinsertdefinition_mvel.vm (added)
+++ tiles/framework/trunk/tiles-test/src/main/webapp/velocity/testinsertdefinition_mvel.vm Wed Jun 24 14:08:32 2009
@@ -0,0 +1,22 @@
+#*
+ * $Id: testinsertdefinition_el.vm 782137 2009-06-05 21:18:52Z apetrelli $
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ *#
+$tiles.insertDefinition({"name":"velocity.test.composite.mvel.definition"})

Modified: tiles/framework/trunk/tiles-test/src/test/selenium/ConfiguredDefinitionELTest.html
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/src/test/selenium/ConfiguredDefinitionELTest.html?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-test/src/test/selenium/ConfiguredDefinitionELTest.html (original)
+++ tiles/framework/trunk/tiles-test/src/test/selenium/ConfiguredDefinitionELTest.html Wed Jun 24 14:08:32 2009
@@ -28,7 +28,7 @@
 <body>
 <table cellpadding="1" cellspacing="1" border="1">
 <thead>
-w<tr><td rowspan="1" colspan="3">Configured Definition EL Test</td></tr>
+<tr><td rowspan="1" colspan="3">Configured Definition EL Test</td></tr>
 </thead><tbody>
 <tr>
 	<td>open</td>

Added: tiles/framework/trunk/tiles-test/src/test/selenium/ConfiguredDefinitionMVELTest.html
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/src/test/selenium/ConfiguredDefinitionMVELTest.html?rev=788032&view=auto
==============================================================================
--- tiles/framework/trunk/tiles-test/src/test/selenium/ConfiguredDefinitionMVELTest.html (added)
+++ tiles/framework/trunk/tiles-test/src/test/selenium/ConfiguredDefinitionMVELTest.html Wed Jun 24 14:08:32 2009
@@ -0,0 +1,71 @@
+<!--
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+-->
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Configured Definition MVEL Test</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Configured Definition MVEL Test</td></tr>
+</thead><tbody>
+<tr>
+	<td>open</td>
+	<td>/tiles-test/index.jsp</td>
+	<td></td>
+</tr>
+<tr>
+	<td>clickAndWait</td>
+	<td>link=Test Insert Configured Definition with MVEL</td>
+	<td></td>
+</tr>
+<tr>
+	<td>assertTextPresent</td>
+	<td>This is a configured composite definition.</td>
+	<td></td>
+</tr>
+<tr>
+	<td>assertTextPresent</td>
+	<td>This is the header</td>
+	<td></td>
+</tr>
+<tr>
+	<td>assertTextPresent</td>
+	<td>This is a configured inner definition.</td>
+	<td></td>
+</tr>
+<tr>
+	<td>assertTextPresent</td>
+	<td>This is the header</td>
+	<td></td>
+</tr>
+<tr>
+	<td>assertTextPresent</td>
+	<td>This is a body</td>
+	<td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>

Propchange: tiles/framework/trunk/tiles-test/src/test/selenium/ConfiguredDefinitionMVELTest.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tiles/framework/trunk/tiles-test/src/test/selenium/ConfiguredDefinitionMVELTest.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Modified: tiles/framework/trunk/tiles-test/src/test/selenium/TestSuite.html
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/src/test/selenium/TestSuite.html?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-test/src/test/selenium/TestSuite.html (original)
+++ tiles/framework/trunk/tiles-test/src/test/selenium/TestSuite.html Wed Jun 24 14:08:32 2009
@@ -103,6 +103,9 @@
         <td><a href="ConfiguredDefinitionELTest.html">Configured Definition EL Test</a></td>
     </tr>
     <tr>
+        <td><a href="ConfiguredDefinitionMVELTest.html">Configured Definition MVEL Test</a></td>
+    </tr>
+    <tr>
         <td><a href="ConfiguredDefinitionELSingleEvalTest.html">Configured Definition EL with Single Evaluation Test</a></td>
     </tr>
     <tr>
@@ -298,6 +301,9 @@
         <td><a href="freemarker/ConfiguredDefinitionELTest.html">FreeMarker: Configured Definition EL Test</a></td>
     </tr>
     <tr>
+        <td><a href="freemarker/ConfiguredDefinitionMVELTest.html">FreeMarker: Configured Definition MVEL Test</a></td>
+    </tr>
+    <tr>
         <td><a href="freemarker/ConfiguredDefinitionELSingleEvalTest.html">FreeMarker: Configured Definition EL with Single Evaluation Test</a></td>
     </tr>
     <tr>
@@ -490,6 +496,9 @@
         <td><a href="velocity/ConfiguredDefinitionELTest.html">Velocity: Configured Definition EL Test</a></td>
     </tr>
     <tr>
+        <td><a href="velocity/ConfiguredDefinitionMVELTest.html">Velocity: Configured Definition MVEL Test</a></td>
+    </tr>
+    <tr>
         <td><a href="velocity/ConfiguredDefinitionELSingleEvalTest.html">Velocity: Configured Definition EL with Single Evaluation Test</a></td>
     </tr>
     <tr>

Modified: tiles/framework/trunk/tiles-test/src/test/selenium/freemarker/ConfiguredDefinitionELTest.html
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/src/test/selenium/freemarker/ConfiguredDefinitionELTest.html?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-test/src/test/selenium/freemarker/ConfiguredDefinitionELTest.html (original)
+++ tiles/framework/trunk/tiles-test/src/test/selenium/freemarker/ConfiguredDefinitionELTest.html Wed Jun 24 14:08:32 2009
@@ -28,7 +28,7 @@
 <body>
 <table cellpadding="1" cellspacing="1" border="1">
 <thead>
-w<tr><td rowspan="1" colspan="3">Configured Definition EL Test</td></tr>
+<tr><td rowspan="1" colspan="3">Configured Definition EL Test</td></tr>
 </thead><tbody>
 <tr>
 	<td>open</td>

Added: tiles/framework/trunk/tiles-test/src/test/selenium/freemarker/ConfiguredDefinitionMVELTest.html
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/src/test/selenium/freemarker/ConfiguredDefinitionMVELTest.html?rev=788032&view=auto
==============================================================================
--- tiles/framework/trunk/tiles-test/src/test/selenium/freemarker/ConfiguredDefinitionMVELTest.html (added)
+++ tiles/framework/trunk/tiles-test/src/test/selenium/freemarker/ConfiguredDefinitionMVELTest.html Wed Jun 24 14:08:32 2009
@@ -0,0 +1,71 @@
+<!--
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+-->
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Configured Definition MVEL Test</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Configured Definition MVEL Test</td></tr>
+</thead><tbody>
+<tr>
+	<td>open</td>
+	<td>/tiles-test/index.jsp</td>
+	<td></td>
+</tr>
+<tr>
+	<td>clickAndWait</td>
+	<td>link=FreeMarker: Test Insert Configured Definition with MVEL</td>
+	<td></td>
+</tr>
+<tr>
+	<td>assertTextPresent</td>
+	<td>This is a configured composite definition.</td>
+	<td></td>
+</tr>
+<tr>
+	<td>assertTextPresent</td>
+	<td>This is the header</td>
+	<td></td>
+</tr>
+<tr>
+	<td>assertTextPresent</td>
+	<td>This is a configured inner definition.</td>
+	<td></td>
+</tr>
+<tr>
+	<td>assertTextPresent</td>
+	<td>This is the header</td>
+	<td></td>
+</tr>
+<tr>
+	<td>assertTextPresent</td>
+	<td>This is a body</td>
+	<td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>

Propchange: tiles/framework/trunk/tiles-test/src/test/selenium/freemarker/ConfiguredDefinitionMVELTest.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tiles/framework/trunk/tiles-test/src/test/selenium/freemarker/ConfiguredDefinitionMVELTest.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Modified: tiles/framework/trunk/tiles-test/src/test/selenium/velocity/ConfiguredDefinitionELTest.html
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/src/test/selenium/velocity/ConfiguredDefinitionELTest.html?rev=788032&r1=788031&r2=788032&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-test/src/test/selenium/velocity/ConfiguredDefinitionELTest.html (original)
+++ tiles/framework/trunk/tiles-test/src/test/selenium/velocity/ConfiguredDefinitionELTest.html Wed Jun 24 14:08:32 2009
@@ -28,7 +28,7 @@
 <body>
 <table cellpadding="1" cellspacing="1" border="1">
 <thead>
-w<tr><td rowspan="1" colspan="3">Configured Definition EL Test</td></tr>
+<tr><td rowspan="1" colspan="3">Configured Definition EL Test</td></tr>
 </thead><tbody>
 <tr>
 	<td>open</td>

Added: tiles/framework/trunk/tiles-test/src/test/selenium/velocity/ConfiguredDefinitionMVELTest.html
URL: http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/src/test/selenium/velocity/ConfiguredDefinitionMVELTest.html?rev=788032&view=auto
==============================================================================
--- tiles/framework/trunk/tiles-test/src/test/selenium/velocity/ConfiguredDefinitionMVELTest.html (added)
+++ tiles/framework/trunk/tiles-test/src/test/selenium/velocity/ConfiguredDefinitionMVELTest.html Wed Jun 24 14:08:32 2009
@@ -0,0 +1,71 @@
+<!--
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+-->
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Configured Definition MVEL Test</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">Configured Definition MVEL Test</td></tr>
+</thead><tbody>
+<tr>
+	<td>open</td>
+	<td>/tiles-test/index.jsp</td>
+	<td></td>
+</tr>
+<tr>
+	<td>clickAndWait</td>
+	<td>link=Velocity: Test Insert Configured Definition with MVEL</td>
+	<td></td>
+</tr>
+<tr>
+	<td>assertTextPresent</td>
+	<td>This is a configured composite definition.</td>
+	<td></td>
+</tr>
+<tr>
+	<td>assertTextPresent</td>
+	<td>This is the header</td>
+	<td></td>
+</tr>
+<tr>
+	<td>assertTextPresent</td>
+	<td>This is a configured inner definition.</td>
+	<td></td>
+</tr>
+<tr>
+	<td>assertTextPresent</td>
+	<td>This is the header</td>
+	<td></td>
+</tr>
+<tr>
+	<td>assertTextPresent</td>
+	<td>This is a body</td>
+	<td></td>
+</tr>
+
+</tbody></table>
+</body>
+</html>

Propchange: tiles/framework/trunk/tiles-test/src/test/selenium/velocity/ConfiguredDefinitionMVELTest.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tiles/framework/trunk/tiles-test/src/test/selenium/velocity/ConfiguredDefinitionMVELTest.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL