Author: apetrelli
Date: Mon May 12 03:35:47 2008
New Revision: 655462

URL: http://svn.apache.org/viewvc?rev=655462&view=rev
Log:
TILES-268
Added a "tomcat5x" profile for Tomcat 5 version.
Fixed execution to be multiplatform.

Added:
    
tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/evaluator/
    
tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/evaluator/el/
    
tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/evaluator/el/MultiversionExpressionFactoryFactory.java
   (with props)
    
tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/evaluator/el/package.html
   (with props)
    tiles/framework/trunk/tiles-test/src/main/webapp/WEB-INF/web-24.xml   (with 
props)
Modified:
    tiles/framework/trunk/tiles-test/pom.xml
    
tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/factory/TestTilesContainerFactory.java
    tiles/framework/trunk/tiles-test/src/main/webapp/testinitcontainer.jsp

Modified: tiles/framework/trunk/tiles-test/pom.xml
URL: 
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/pom.xml?rev=655462&r1=655461&r2=655462&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-test/pom.xml (original)
+++ tiles/framework/trunk/tiles-test/pom.xml Mon May 12 03:35:47 2008
@@ -60,21 +60,10 @@
          <scope>provided</scope>
       </dependency>
       <dependency>
-         <groupId>javax.servlet</groupId>
-         <artifactId>jstl</artifactId>
-         <version>1.2</version>
-         <scope>runtime</scope>
-      </dependency>
-      <dependency>
-        <groupId>org.freemarker</groupId>
-        <artifactId>freemarker</artifactId>
-        <version>2.3.10</version>
-      </dependency>
-      <dependency>
         <groupId>org.apache.tomcat</groupId>
         <artifactId>jasper-el</artifactId>
         <version>6.0.16</version>
-        <scope>optional</scope>
+        <scope>provided</scope>
         <exclusions>
           <exclusion>
             <groupId>org.apache.tomcat</groupId>
@@ -82,6 +71,17 @@
           </exclusion>
         </exclusions>
       </dependency>
+      <dependency>
+         <groupId>javax.servlet</groupId>
+         <artifactId>jstl</artifactId>
+         <version>1.2</version>
+         <scope>runtime</scope>
+      </dependency>
+      <dependency>
+        <groupId>org.freemarker</groupId>
+        <artifactId>freemarker</artifactId>
+        <version>2.3.10</version>
+      </dependency>
    </dependencies>
    
    <build>
@@ -287,7 +287,103 @@
             </build>
         </profile>
 
+        <profile>
+            <id>tomcat5</id>
+            <dependencies>
+                <dependency>
+                   <groupId>javax.servlet</groupId>
+                   <artifactId>servlet-api</artifactId>
+                   <version>2.4</version>
+                   <scope>provided</scope>
+                </dependency>
+                <dependency>
+                   <groupId>javax.servlet</groupId>
+                   <artifactId>jsp-api</artifactId>
+                   <version>2.0</version>
+                   <scope>provided</scope>
+                </dependency>
+                <dependency>
+                   <groupId>javax.servlet</groupId>
+                   <artifactId>jstl</artifactId>
+                   <version>1.1.2</version>
+                   <scope>runtime</scope>
+                </dependency>
+                <dependency>
+                   <groupId>taglibs</groupId>
+                   <artifactId>standard</artifactId>
+                   <version>1.1.2</version>
+                   <scope>runtime</scope>
+                </dependency>
+                <dependency>
+                  <groupId>javax.el</groupId>
+                  <artifactId>el-api</artifactId>
+                  <version>1.0</version>
+                  <scope>runtime</scope>
+                </dependency>
+                <dependency>
+                  <groupId>org.apache.tomcat</groupId>
+                  <artifactId>jasper-el</artifactId>
+                  <version>6.0.16</version>
+                  <scope>runtime</scope>
+                  <exclusions>
+                    <exclusion>
+                      <groupId>org.apache.tomcat</groupId>
+                      <artifactId>el-api</artifactId>
+                    </exclusion>
+                  </exclusions>
+                </dependency>
+            </dependencies>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.apache.maven.plugins</groupId>
+                        <artifactId>maven-war-plugin</artifactId>
+                        <version>2.0.2</version>
+                        <configuration>
+                            <webXml>src/main/webapp/WEB-INF/web-24.xml</webXml>
+                            <webResources>
+                                <resource>
+                                    <directory>.</directory>
+                                    <targetPath>META-INF</targetPath>
+                                    <includes>
+                                        <include>LICENSE.txt</include>
+                                        <include>NOTICE.txt</include>
+                                    </includes>
+                                </resource>
+                            </webResources>
+                            
<warSourceExcludes>**/jstl-1.2.jar</warSourceExcludes>
+                         </configuration>
+                    </plugin>
+                    <plugin>
+                         <groupId>org.codehaus.cargo</groupId>
+                         <artifactId>cargo-maven2-plugin</artifactId>
+                         <configuration>
+                             <container>
+                                 <containerId>tomcat5x</containerId>
+                                 <home>${cargo.tomcat5x.home}</home>
+                                 
<log>${project.build.directory}/tomcat5x.log</log>
+                                 
<output>${project.build.directory}/tomcat5x.out</output>
+                             </container>
+                             <configuration>
+                                 
<home>${project.build.directory}/tomcat5x</home>
+                             </configuration>
+                         </configuration>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
     </profiles>
+    <repositories>
+        <repository>
+            <id>dtddoc</id>
+            <url>http://dtddoc.sf.net/maven2</url>
+        </repository>
+        <repository>
+            <id>java_net</id>
+            <url>http://download.java.net/maven/1/</url>
+            <layout>legacy</layout>
+        </repository>
+    </repositories>
     <pluginRepositories>
         <pluginRepository>
             <id>codehaus.snapshots</id>

Added: 
tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/evaluator/el/MultiversionExpressionFactoryFactory.java
URL: 
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/evaluator/el/MultiversionExpressionFactoryFactory.java?rev=655462&view=auto
==============================================================================
--- 
tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/evaluator/el/MultiversionExpressionFactoryFactory.java
 (added)
+++ 
tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/evaluator/el/MultiversionExpressionFactoryFactory.java
 Mon May 12 03:35:47 2008
@@ -0,0 +1,64 @@
+/*
+ * $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.test.evaluator.el;
+
+import javax.el.ExpressionFactory;
+import javax.servlet.jsp.JspFactory;
+
+import org.apache.el.ExpressionFactoryImpl;
+import org.apache.tiles.evaluator.el.JspExpressionFactoryFactory;
+
+/**
+ * Tries to use JSP 2.1 expression factory first, then Tomcat one.
+ *
+ * @version $Rev$ $Date$
+ */
+public class MultiversionExpressionFactoryFactory extends
+        JspExpressionFactoryFactory {
+
+    /**
+     * Minimum servlet version major number.
+     */
+    private static final int MINIMUM_SERVLET_VERSION_MAJOR = 2;
+
+    /**
+     * Minimum servlet version minor number.
+     */
+    private static final int MINIMUM_SERVLET_VERSION_MINOR = 5;
+
+    /** [EMAIL PROTECTED] */
+    @Override
+    public ExpressionFactory getExpressionFactory() {
+        ExpressionFactory efFactory;
+        if (servletContext.getMajorVersion() > MINIMUM_SERVLET_VERSION_MAJOR
+                || (servletContext.getMajorVersion() == 
MINIMUM_SERVLET_VERSION_MAJOR && servletContext
+                        .getMinorVersion() >= MINIMUM_SERVLET_VERSION_MINOR)) {
+            efFactory = 
JspFactory.getDefaultFactory().getJspApplicationContext(
+                    servletContext).getExpressionFactory();
+        } else {
+            efFactory = new ExpressionFactoryImpl();
+        }
+
+        return efFactory;
+    }
+
+}

Propchange: 
tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/evaluator/el/MultiversionExpressionFactoryFactory.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/evaluator/el/MultiversionExpressionFactoryFactory.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: 
tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/evaluator/el/package.html
URL: 
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/evaluator/el/package.html?rev=655462&view=auto
==============================================================================
--- 
tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/evaluator/el/package.html
 (added)
+++ 
tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/evaluator/el/package.html
 Mon May 12 03:35:47 2008
@@ -0,0 +1,30 @@
+<!--
+/*
+ * $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>
+    <title>EL evaluator test classes.</title>
+</head>
+<body>
+Contains classes to test the EL support in the test web application.
+</body>
+</html>
\ No newline at end of file

Propchange: 
tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/evaluator/el/package.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
tiles/framework/trunk/tiles-test/src/main/java/org/apache/tiles/test/evaluator/el/package.html
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

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=655462&r1=655461&r2=655462&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
 Mon May 12 03:35:47 2008
@@ -41,7 +41,6 @@
 import org.apache.tiles.definition.DefinitionsReader;
 import org.apache.tiles.evaluator.AttributeEvaluator;
 import org.apache.tiles.evaluator.el.ELAttributeEvaluator;
-import org.apache.tiles.evaluator.el.JspExpressionFactoryFactory;
 import org.apache.tiles.evaluator.el.TilesContextBeanELResolver;
 import org.apache.tiles.evaluator.el.TilesContextELResolver;
 import org.apache.tiles.factory.BasicTilesContainerFactory;
@@ -49,6 +48,7 @@
 import org.apache.tiles.impl.mgmt.CachingTilesContainer;
 import org.apache.tiles.locale.LocaleResolver;
 import org.apache.tiles.renderer.impl.BasicRendererFactory;
+import org.apache.tiles.test.evaluator.el.MultiversionExpressionFactoryFactory;
 import org.apache.tiles.test.renderer.ReverseStringAttributeRenderer;
 
 /**
@@ -100,7 +100,7 @@
             TilesContextFactory contextFactory, LocaleResolver resolver) {
         ELAttributeEvaluator evaluator = new ELAttributeEvaluator();
         evaluator.setApplicationContext(applicationContext);
-        JspExpressionFactoryFactory efFactory = new 
JspExpressionFactoryFactory();
+        MultiversionExpressionFactoryFactory efFactory = new 
MultiversionExpressionFactoryFactory();
         efFactory.setApplicationContext(applicationContext);
         evaluator.setExpressionFactory(efFactory.getExpressionFactory());
         ELResolver elResolver = new CompositeELResolver() {

Added: tiles/framework/trunk/tiles-test/src/main/webapp/WEB-INF/web-24.xml
URL: 
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/src/main/webapp/WEB-INF/web-24.xml?rev=655462&view=auto
==============================================================================
--- tiles/framework/trunk/tiles-test/src/main/webapp/WEB-INF/web-24.xml (added)
+++ tiles/framework/trunk/tiles-test/src/main/webapp/WEB-INF/web-24.xml Mon May 
12 03:35:47 2008
@@ -0,0 +1,155 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+/*
+ * $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.
+ */
+-->
+
+<web-app xmlns="http://java.sun.com/xml/ns/j2ee";
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd";
+         version="2.4">
+
+    <display-name>Tiles 2 Test Application</display-name>
+    <distributable/>
+
+    <context-param>
+        
<param-name>org.apache.tiles.factory.AbstractTilesContainerFactory</param-name>
+        
<param-value>org.apache.tiles.test.factory.TestTilesContainerFactory</param-value>
+    </context-param>
+
+    <filter>
+        <filter-name>Tiles Decoration Filter</filter-name>
+        
<filter-class>org.apache.tiles.web.util.TilesDecorationFilter</filter-class>
+        <init-param>
+            <param-name>definition</param-name>
+            <param-value>test.definition</param-value>
+        </init-param>
+        <init-param>
+            <param-name>attribute-name</param-name>
+            <param-value>body</param-value>
+        </init-param>
+    </filter>
+
+    <filter>
+        <filter-name>Security Wrapping Filter</filter-name>
+        
<filter-class>org.apache.tiles.test.filter.SecurityWrappingFilter</filter-class>
+    </filter>
+
+    <filter-mapping>
+        <filter-name>Tiles Decoration Filter</filter-name>
+        <url-pattern>/testdecorationfilter.jsp</url-pattern>
+        <dispatcher>REQUEST</dispatcher>
+    </filter-mapping>
+
+    <filter-mapping>
+        <filter-name>Security Wrapping Filter</filter-name>
+        <url-pattern>/*</url-pattern>
+        <dispatcher>REQUEST</dispatcher>
+    </filter-mapping>
+
+    <!-- Standard Action Servlet Configuration -->
+    <servlet>
+        <servlet-name>tiles</servlet-name>
+        
<servlet-class>org.apache.tiles.web.startup.TilesServlet</servlet-class>
+        <load-on-startup>2</load-on-startup>
+    </servlet>
+    <servlet>
+        <servlet-name>freemarker</servlet-name>
+        <servlet-class>freemarker.ext.servlet.FreemarkerServlet</servlet-class>
+        
+        <!-- FreemarkerServlet settings: -->
+        <init-param>
+            <param-name>TemplatePath</param-name>
+            <param-value>/</param-value>
+        </init-param>
+        <init-param>
+            <param-name>NoCache</param-name>
+            <param-value>true</param-value>
+        </init-param>
+        <init-param>
+            <param-name>ContentType</param-name>
+            <param-value>text/html</param-value>
+        </init-param>
+        
+        <!-- FreeMarker settings: -->
+        <init-param>
+            <param-name>template_update_delay</param-name>
+            <param-value>0</param-value> <!-- 0 is for development only! Use 
higher value otherwise. -->
+        </init-param>
+        <init-param>
+            <param-name>default_encoding</param-name>
+            <param-value>ISO-8859-1</param-value>
+        </init-param>
+        <init-param>
+            <param-name>number_format</param-name>
+            <param-value>0.##########</param-value>
+        </init-param>
+        
+        <load-on-startup>3</load-on-startup>
+    </servlet>
+
+    <servlet>
+        <servlet-name>Tiles Dispatch Servlet</servlet-name>
+        
<servlet-class>org.apache.tiles.web.util.TilesDispatchServlet</servlet-class>
+    </servlet>
+
+    <!-- Standard Action Servlet Configuration -->
+    <servlet>
+        <servlet-name>layoutServlet</servlet-name>
+        
<servlet-class>org.apache.tiles.test.servlet.IncludingServlet</servlet-class>
+        <init-param>
+            <param-name>include</param-name>
+            <param-value>/layout.jsp</param-value>
+        </init-param>
+        <init-param>
+            <param-name>errorInclude</param-name>
+            <param-value>/errorInclude.jsp</param-value>
+        </init-param>
+    </servlet>
+    <servlet>
+        <servlet-name>selectLocaleServlet</servlet-name>
+        
<servlet-class>org.apache.tiles.test.servlet.SelectLocaleServlet</servlet-class>
+    </servlet>
+
+    <welcome-file-list>
+        <welcome-file>index.jsp</welcome-file>
+    </welcome-file-list>
+
+    <servlet-mapping>
+        <servlet-name>freemarker</servlet-name>
+        <url-pattern>*.ftl</url-pattern>
+    </servlet-mapping>
+    <servlet-mapping>
+        <servlet-name>layoutServlet</servlet-name>
+        <url-pattern>/servlets/layoutServlet</url-pattern>
+    </servlet-mapping>
+
+    <servlet-mapping>
+        <servlet-name>selectLocaleServlet</servlet-name>
+        <url-pattern>/servlets/selectLocaleServlet</url-pattern>
+    </servlet-mapping>
+
+    <servlet-mapping>
+        <servlet-name>Tiles Dispatch Servlet</servlet-name>
+        <url-pattern>*.tiles</url-pattern>
+    </servlet-mapping>
+
+</web-app>

Propchange: tiles/framework/trunk/tiles-test/src/main/webapp/WEB-INF/web-24.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tiles/framework/trunk/tiles-test/src/main/webapp/WEB-INF/web-24.xml
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Modified: tiles/framework/trunk/tiles-test/src/main/webapp/testinitcontainer.jsp
URL: 
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-test/src/main/webapp/testinitcontainer.jsp?rev=655462&r1=655461&r2=655462&view=diff
==============================================================================
--- tiles/framework/trunk/tiles-test/src/main/webapp/testinitcontainer.jsp 
(original)
+++ tiles/framework/trunk/tiles-test/src/main/webapp/testinitcontainer.jsp Mon 
May 12 03:35:47 2008
@@ -38,6 +38,8 @@
                
value="reversed,org.apache.tiles.test.renderer.ReverseStringAttributeRenderer"/>
     <tiles:putAttribute name="org.apache.tiles.evaluator.AttributeEvaluator"
                value="org.apache.tiles.evaluator.el.ELAttributeEvaluator"/>
+    <tiles:putAttribute 
name="org.apache.tiles.evaluator.el.ExpressionFactoryFactory"
+               
value="org.apache.tiles.test.evaluator.el.MultiversionExpressionFactoryFactory"/>
 </tiles:initContainer>
 
 <tiles:insertDefinition name="test.definition" />


Reply via email to