Author: alexsmirnov
Date: 2008-11-12 02:15:09 -0500 (Wed, 12 Nov 2008)
New Revision: 11099
Added:
trunk/framework/jsf-test/src/main/resources/org/richfaces/test/ajax-web.xml
trunk/framework/jsf-test/src/test/java/org/richfaces/test/staging/
Removed:
trunk/framework/jsf-test/src/main/java/org/richfaces/collections/
trunk/framework/jsf-test/src/test/java/org/richfaces/test/stub/
Modified:
trunk/framework/jsf-test/pom.xml
trunk/framework/jsf-test/src/main/java/org/richfaces/test/AbstractFacesTest.java
trunk/framework/jsf-test/src/main/java/org/richfaces/test/staging/FilterContainer.java
trunk/framework/jsf-test/src/test/java/org/richfaces/test/staging/ServerResourcePathTest.java
trunk/framework/jsf-test/src/test/java/org/richfaces/test/staging/ServerResourceTest.java
trunk/framework/jsf-test/src/test/java/org/richfaces/test/staging/ServletTest.java
Log:
Add ajax4jsf filter check.
Modified: trunk/framework/jsf-test/pom.xml
===================================================================
--- trunk/framework/jsf-test/pom.xml 2008-11-12 02:11:00 UTC (rev 11098)
+++ trunk/framework/jsf-test/pom.xml 2008-11-12 07:15:09 UTC (rev 11099)
@@ -21,16 +21,16 @@
<artifactId>htmlunit</artifactId>
<version>2.3</version>
</dependency>
- <dependency>
- <groupId>javax.faces</groupId>
+ <dependency>
+ <groupId>javax.faces</groupId>
- <artifactId>jsf-impl</artifactId>
+ <artifactId>jsf-impl</artifactId>
- <version>1.2_10</version>
+ <version>1.2_10</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
<groupId>el-impl</groupId>
<artifactId>el-impl</artifactId>
<version>1.0</version>
Modified:
trunk/framework/jsf-test/src/main/java/org/richfaces/test/AbstractFacesTest.java
===================================================================
---
trunk/framework/jsf-test/src/main/java/org/richfaces/test/AbstractFacesTest.java 2008-11-12
02:11:00 UTC (rev 11098)
+++
trunk/framework/jsf-test/src/main/java/org/richfaces/test/AbstractFacesTest.java 2008-11-12
07:15:09 UTC (rev 11099)
@@ -20,9 +20,13 @@
import javax.faces.lifecycle.Lifecycle;
import javax.faces.lifecycle.LifecycleFactory;
import javax.faces.webapp.FacesServlet;
+import javax.servlet.Filter;
import org.junit.After;
import org.junit.Before;
+import org.richfaces.test.staging.FilterContainer;
+import org.richfaces.test.staging.RequestChain;
+import org.richfaces.test.staging.ServletContainer;
/**
* @author asmirnov
@@ -67,22 +71,37 @@
}
}
facesServer = new StagingServer();
- facesServer.addServlet("*.jsf", new FacesServlet());
- facesServer.addResource("/WEB-INF/web.xml",
- "org/richfaces/test/web.xml");
+ ServletContainer facesServletContainer = new ServletContainer("*.jsf", new
FacesServlet());
+ facesServletContainer.setName("Faces Servlet");
+ try {
+ // Check for an ajax4jsf filter.
+ Class<? extends Filter> ajaxFilterClass = contextClassLoader
+ .loadClass("org.ajax4jsf.Filter")
+ .asSubclass(Filter.class);
+ Filter ajaxFilter = ajaxFilterClass.newInstance();
+ FilterContainer filterContainer = new
FilterContainer(ajaxFilter,facesServletContainer);
+ filterContainer.setName("ajax4jsf");
+ facesServer.addResource("/WEB-INF/web.xml",
+ "org/richfaces/test/ajax-web.xml");
+ facesServer.addServlet(filterContainer);
+ } catch (ClassNotFoundException e) {
+ // No Richfaces filter, uses servlet directly.
+ facesServer.addResource("/WEB-INF/web.xml",
+ "org/richfaces/test/web.xml");
+ facesServer.addServlet(facesServletContainer);
+ }
facesServer.addInitParameter(
StateManager.STATE_SAVING_METHOD_PARAM_NAME,
StateManager.STATE_SAVING_METHOD_SERVER);
facesServer.addInitParameter(ViewHandler.DEFAULT_SUFFIX_PARAM_NAME,
".xhtml");
- facesServer.addInitParameter("com.sun.faces.validateXml", "true");
- facesServer.addInitParameter("com.sun.faces.verifyObjects",
"true");
EventListener listener = null;
try {
Class<? extends EventListener> listenerClass = contextClassLoader
.loadClass("com.sun.faces.config.ConfigureListener")
.asSubclass(EventListener.class);
listener = listenerClass.newInstance();
+ setupSunFaces();
} catch (ClassNotFoundException e) {
// No JSF RI listener
Class<? extends EventListener> listenerClass;
@@ -92,6 +111,7 @@
"org.apache.myfaces.webapp.StartupServletContextListener")
.asSubclass(EventListener.class);
listener = listenerClass.newInstance();
+ setupMyFaces();
} catch (ClassNotFoundException e1) {
throw new TestException("No JSF listeners have been found", e1);
} catch (Exception e2) {
@@ -105,6 +125,15 @@
facesServer.init();
}
+ protected void setupMyFaces() {
+ // Do nothing by default.
+ }
+
+ protected void setupSunFaces() {
+ facesServer.addInitParameter("com.sun.faces.validateXml", "true");
+ facesServer.addInitParameter("com.sun.faces.verifyObjects",
"true");
+ }
+
protected void setupWebContent(StagingServer facesServer){
}
Modified:
trunk/framework/jsf-test/src/main/java/org/richfaces/test/staging/FilterContainer.java
===================================================================
---
trunk/framework/jsf-test/src/main/java/org/richfaces/test/staging/FilterContainer.java 2008-11-12
02:11:00 UTC (rev 11098)
+++
trunk/framework/jsf-test/src/main/java/org/richfaces/test/staging/FilterContainer.java 2008-11-12
07:15:09 UTC (rev 11099)
@@ -34,6 +34,14 @@
this.initParameters = new HashMap<String, String>();
}
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
public void execute(ServletRequest request, ServletResponse response)
throws ServletException, IOException {
FilterChain chain = new FilterChain(){
Added: trunk/framework/jsf-test/src/main/resources/org/richfaces/test/ajax-web.xml
===================================================================
--- trunk/framework/jsf-test/src/main/resources/org/richfaces/test/ajax-web.xml
(rev 0)
+++ trunk/framework/jsf-test/src/main/resources/org/richfaces/test/ajax-web.xml 2008-11-12
07:15:09 UTC (rev 11099)
@@ -0,0 +1,71 @@
+<?xml version='1.0' encoding='UTF-8'?>
+
+<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
+
+ <display-name>Stub test</display-name>
+ <description>
+ Stub testing server
+ </description>
+ <context-param>
+ <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
+ <param-value>server</param-value>
+ </context-param>
+ <context-param>
+ <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
+ <param-value>.xhtml</param-value>
+ </context-param>
+ <context-param>
+ <description>
+ Set this flag to true if you want the JavaServer Faces
+ Reference Implementation to validate the XML in your
+ faces-config.xml resources against the DTD. Default
+ value is false.
+ </description>
+ <param-name>com.sun.faces.validateXml</param-name>
+ <param-value>true</param-value>
+ </context-param>
+ <context-param>
+ <description>
+ Set this flag to true if you want the JavaServer Faces
+ Reference Implementation to verify that all of the application
+ objects you have configured (components, converters,
+ renderers, and validators) can be successfully created.
+ Default value is false.
+ </description>
+ <param-name>com.sun.faces.verifyObjects</param-name>
+ <param-value>true</param-value>
+ </context-param>
+ <filter>
+ <display-name>Ajax4jsf Filter</display-name>
+ <filter-name>ajax4jsf</filter-name>
+ <filter-class>org.ajax4jsf.Filter</filter-class>
+ </filter>
+ <filter-mapping>
+ <filter-name>ajax4jsf</filter-name>
+ <servlet-name>Faces Servlet</servlet-name>
+ <dispatcher>REQUEST</dispatcher>
+ <dispatcher>FORWARD</dispatcher>
+ <dispatcher>INCLUDE</dispatcher>
+ <dispatcher>ERROR</dispatcher>
+ </filter-mapping>
+
+ <!-- Faces Servlet -->
+ <servlet>
+ <servlet-name>Faces Servlet</servlet-name>
+ <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
+ </servlet>
+
+
+ <!-- Faces Servlet Mapping -->
+
+ <servlet-mapping>
+ <servlet-name>Faces Servlet</servlet-name>
+ <url-pattern>*.jsf</url-pattern>
+ </servlet-mapping>
+
+
+</web-app>
+
+
Property changes on:
trunk/framework/jsf-test/src/main/resources/org/richfaces/test/ajax-web.xml
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Copied: trunk/framework/jsf-test/src/test/java/org/richfaces/test/staging (from rev 11098,
trunk/framework/jsf-test/src/test/java/org/richfaces/test/stub)
Modified:
trunk/framework/jsf-test/src/test/java/org/richfaces/test/staging/ServerResourcePathTest.java
===================================================================
---
trunk/framework/jsf-test/src/test/java/org/richfaces/test/stub/ServerResourcePathTest.java 2008-11-12
02:11:00 UTC (rev 11098)
+++
trunk/framework/jsf-test/src/test/java/org/richfaces/test/staging/ServerResourcePathTest.java 2008-11-12
07:15:09 UTC (rev 11099)
@@ -1,7 +1,7 @@
/**
*
*/
-package org.richfaces.test.stub;
+package org.richfaces.test.staging;
import static org.junit.Assert.*;
Modified:
trunk/framework/jsf-test/src/test/java/org/richfaces/test/staging/ServerResourceTest.java
===================================================================
---
trunk/framework/jsf-test/src/test/java/org/richfaces/test/stub/ServerResourceTest.java 2008-11-12
02:11:00 UTC (rev 11098)
+++
trunk/framework/jsf-test/src/test/java/org/richfaces/test/staging/ServerResourceTest.java 2008-11-12
07:15:09 UTC (rev 11099)
@@ -1,7 +1,7 @@
/**
*
*/
-package org.richfaces.test.stub;
+package org.richfaces.test.staging;
import static org.junit.Assert.*;
Modified:
trunk/framework/jsf-test/src/test/java/org/richfaces/test/staging/ServletTest.java
===================================================================
---
trunk/framework/jsf-test/src/test/java/org/richfaces/test/stub/ServletTest.java 2008-11-12
02:11:00 UTC (rev 11098)
+++
trunk/framework/jsf-test/src/test/java/org/richfaces/test/staging/ServletTest.java 2008-11-12
07:15:09 UTC (rev 11099)
@@ -1,4 +1,4 @@
-package org.richfaces.test.stub;
+package org.richfaces.test.staging;
import static org.junit.Assert.*;