You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by jg...@apache.org on 2006/04/06 00:17:27 UTC
svn commit: r391831 - in /geronimo/branches/1.1/modules:
tomcat-builder/src/java/org/apache/geronimo/tomcat/deployment/
tomcat-builder/src/schema/ tomcat/src/java/org/apache/geronimo/tomcat/
tomcat/src/java/org/apache/geronimo/tomcat/interceptor/ tomca...
Author: jgenender
Date: Wed Apr 5 15:17:25 2006
New Revision: 391831
URL: http://svn.apache.org/viewcvs?rev=391831&view=rev
Log:
Merge critical Tomcat fixes into 1.1 form TRUNK (will update JIRAs)
Modified:
geronimo/branches/1.1/modules/tomcat-builder/src/java/org/apache/geronimo/tomcat/deployment/TomcatModuleBuilder.java
geronimo/branches/1.1/modules/tomcat-builder/src/schema/geronimo-tomcat-1.1.xsd
geronimo/branches/1.1/modules/tomcat-builder/src/schema/geronimo-tomcat-config-1.0.xsd
geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/ConnectorGBean.java
geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/GeronimoStandardContext.java
geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/TomcatContext.java
geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/TomcatWebAppContext.java
geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/TomcatWebConnector.java
geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/interceptor/PolicyContextBeforeAfter.java
geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/listener/DispatchListener.java
geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/realm/TomcatGeronimoRealm.java
geronimo/branches/1.1/modules/tomcat/src/test/org/apache/geronimo/tomcat/AbstractWebModuleTest.java
Modified: geronimo/branches/1.1/modules/tomcat-builder/src/java/org/apache/geronimo/tomcat/deployment/TomcatModuleBuilder.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/tomcat-builder/src/java/org/apache/geronimo/tomcat/deployment/TomcatModuleBuilder.java?rev=391831&r1=391830&r2=391831&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/tomcat-builder/src/java/org/apache/geronimo/tomcat/deployment/TomcatModuleBuilder.java (original)
+++ geronimo/branches/1.1/modules/tomcat-builder/src/java/org/apache/geronimo/tomcat/deployment/TomcatModuleBuilder.java Wed Apr 5 15:17:25 2006
@@ -323,6 +323,9 @@
if (tomcatWebApp.isSetCrossContext()) {
webModuleData.setAttribute("crossContext", Boolean.TRUE);
}
+ if (tomcatWebApp.isSetDisableCookies()) {
+ webModuleData.setAttribute("disableCookies", Boolean.TRUE);
+ }
if (tomcatWebApp.isSetTomcatRealm()) {
String tomcatRealm = tomcatWebApp.getTomcatRealm().trim();
AbstractName realmName = earContext.getNaming().createChildName(moduleName, tomcatRealm, RealmGBean.GBEAN_INFO.getJ2eeType());
Modified: geronimo/branches/1.1/modules/tomcat-builder/src/schema/geronimo-tomcat-1.1.xsd
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/tomcat-builder/src/schema/geronimo-tomcat-1.1.xsd?rev=391831&r1=391830&r2=391831&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/tomcat-builder/src/schema/geronimo-tomcat-1.1.xsd (original)
+++ geronimo/branches/1.1/modules/tomcat-builder/src/schema/geronimo-tomcat-1.1.xsd Wed Apr 5 15:17:25 2006
@@ -43,6 +43,7 @@
<xs:element name="host" type="xs:string" minOccurs="0"/>
<xs:element name="cross-context" type="tomcat:emptyType" minOccurs="0"/>
+ <xs:element name="disable-cookies" type="tomcat:emptyType" minOccurs="0"/>
<xs:element name="valve-chain" type="xs:string" minOccurs="0"/>
<xs:element name="tomcat-realm" type="xs:string" minOccurs="0"/>
<xs:element name="manager" type="xs:string" minOccurs="0"/>
Modified: geronimo/branches/1.1/modules/tomcat-builder/src/schema/geronimo-tomcat-config-1.0.xsd
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/tomcat-builder/src/schema/geronimo-tomcat-config-1.0.xsd?rev=391831&r1=391830&r2=391831&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/tomcat-builder/src/schema/geronimo-tomcat-config-1.0.xsd (original)
+++ geronimo/branches/1.1/modules/tomcat-builder/src/schema/geronimo-tomcat-config-1.0.xsd Wed Apr 5 15:17:25 2006
@@ -30,6 +30,7 @@
<xs:sequence>
<xs:element name="host" type="xs:string" minOccurs="0"/>
<xs:element name="cross-context" type="tomcat:emptyType" minOccurs="0"/>
+ <xs:element name="disable-cookies" type="tomcat:emptyType" minOccurs="0"/>
<xs:element name="valve-chain" type="xs:string" minOccurs="0"/>
<xs:element name="tomcat-realm" type="xs:string" minOccurs="0"/>
<xs:element name="manager" type="xs:string" minOccurs="0"/>
Modified: geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/ConnectorGBean.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/ConnectorGBean.java?rev=391831&r1=391830&r2=391831&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/ConnectorGBean.java (original)
+++ geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/ConnectorGBean.java Wed Apr 5 15:17:25 2006
@@ -174,6 +174,14 @@
return getProtocol().toLowerCase()+"://"+connectHost+(getPort() == getDefaultPort() ? "" : ":"+getPort());
}
+ public boolean isEmptySessionPath(){
+ return connector.getEmptySessionPath();
+ }
+
+ public void setEmptySessionPath(boolean emptySessionPath){
+ connector.setEmptySessionPath(emptySessionPath);
+ }
+
/**
* Gets the network protocol that this connector handles.
*/
@@ -401,6 +409,26 @@
connector.setAttribute("disableUploadTimeout", new Boolean(!enabled));
}
+ public int getMaxPostSize() {
+ Object value = connector.getAttribute("maxPostSize");
+ return value == null ? 2097152 : Integer.parseInt(value.toString());
+ }
+
+ public void setMaxPostSize(int bytes) {
+ // TODO Auto-generated method stub
+ connector.setAttribute("maxPostSize", new Integer(bytes));
+
+ }
+
+ public int getMaxSavePostSize() {
+ Object value = connector.getAttribute("maxSavePostSize");
+ return value == null ? 4096 : Integer.parseInt(value.toString());
+ }
+
+ public void setMaxSavePostSize(int kbytes) {
+ connector.setAttribute("maxSavePostSize", new Integer(kbytes));
+ }
+
public static final GBeanInfo GBEAN_INFO;
@@ -410,7 +438,7 @@
infoFactory.addAttribute("protocol", String.class, true);
infoFactory.addReference(CONNECTOR_CONTAINER_REFERENCE, TomcatContainer.class, NameFactory.GERONIMO_SERVICE);
infoFactory.addOperation("getInternalObject");
- infoFactory.addInterface(TomcatWebConnector.class, new String[]{"host","port","bufferSizeBytes","maxThreads","acceptQueueSize","lingerMillis","tcpNoDelay","redirectPort","minSpareThreads","maxSpareThreads","maxHttpHeaderSizeBytes","hostLookupEnabled","connectionTimeoutMillis","uploadTimeoutEnabled","connectUrl",},
+ infoFactory.addInterface(TomcatWebConnector.class, new String[]{"host","port","bufferSizeBytes","maxThreads","acceptQueueSize","lingerMillis","tcpNoDelay","redirectPort","minSpareThreads","maxSpareThreads","maxHttpHeaderSizeBytes","hostLookupEnabled","connectionTimeoutMillis","uploadTimeoutEnabled","connectUrl","maxPostSize","maxSavePostSize","emptySessionPath"},
new String[]{"host","port","redirectPort"});
infoFactory.setConstructor(new String[] { "name", "protocol", "host", "port", "TomcatContainer"});
GBEAN_INFO = infoFactory.getBeanInfo();
@@ -419,4 +447,5 @@
public static GBeanInfo getGBeanInfo() {
return GBEAN_INFO;
}
+
}
Modified: geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/GeronimoStandardContext.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/GeronimoStandardContext.java?rev=391831&r1=391830&r2=391831&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/GeronimoStandardContext.java (original)
+++ geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/GeronimoStandardContext.java Wed Apr 5 15:17:25 2006
@@ -171,6 +171,8 @@
this.webServiceMap = ctx.getWebServices();
this.setCrossContext(ctx.isCrossContext());
+
+ this.setCookies(!ctx.isDisableCookies());
//Set the Dispatch listener
this.addInstanceListener("org.apache.geronimo.tomcat.listener.DispatchListener");
Modified: geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/TomcatContext.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/TomcatContext.java?rev=391831&r1=391830&r2=391831&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/TomcatContext.java (original)
+++ geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/TomcatContext.java Wed Apr 5 15:17:25 2006
@@ -69,6 +69,8 @@
public Manager getManager();
public boolean isCrossContext();
+
+ public boolean isDisableCookies();
public Map getWebServices();
}
Modified: geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/TomcatWebAppContext.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/TomcatWebAppContext.java?rev=391831&r1=391830&r2=391831&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/TomcatWebAppContext.java (original)
+++ geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/TomcatWebAppContext.java Wed Apr 5 15:17:25 2006
@@ -37,7 +37,6 @@
import org.apache.geronimo.management.geronimo.WebModule;
import org.apache.geronimo.security.jacc.RoleDesignateSource;
import org.apache.geronimo.tomcat.cluster.CatalinaClusterGBean;
-import org.apache.geronimo.tomcat.cluster.WADIGBean;
import org.apache.geronimo.tomcat.util.SecurityHolder;
import org.apache.geronimo.transaction.TrackedConnectionAssociator;
import org.apache.geronimo.transaction.context.OnlineUserTransaction;
@@ -55,7 +54,7 @@
/**
* Wrapper for a WebApplicationContext that sets up its J2EE environment.
*
- * @version $Rev: 387050 $ $Date$
+ * @version $Rev$ $Date$
*/
public class TomcatWebAppContext implements GBeanLifecycle, TomcatContext, WebModule {
@@ -83,6 +82,8 @@
private final boolean crossContext;
+ private final boolean disableCookies;
+
private final Map componentContext;
private final Kernel kernel;
@@ -127,8 +128,9 @@
ObjectRetriever tomcatRealm,
ValveGBean tomcatValveChain,
CatalinaClusterGBean cluster,
- WADIGBean manager,
+ ManagerGBean manager,
boolean crossContext,
+ boolean disableCookies,
Map webServices,
J2EEServer server,
J2EEApplication application,
@@ -204,6 +206,8 @@
this.crossContext = crossContext;
+ this.disableCookies = disableCookies;
+
this.webServices = webServices;
this.classLoader = classLoader;
@@ -272,6 +276,10 @@
return kernel;
}
+ public boolean isDisableCookies() {
+ return disableCookies;
+ }
+
public TransactionContextManager getTransactionContextManager() {
return transactionContextManager;
}
@@ -439,8 +447,9 @@
infoBuilder.addReference("TomcatRealm", ObjectRetriever.class);
infoBuilder.addReference("TomcatValveChain", ValveGBean.class);
infoBuilder.addReference("Cluster", CatalinaClusterGBean.class, CatalinaClusterGBean.J2EE_TYPE);
- infoBuilder.addReference("Manager", WADIGBean.class);
+ infoBuilder.addReference("Manager", ManagerGBean.class);
infoBuilder.addAttribute("crossContext", boolean.class, true);
+ infoBuilder.addAttribute("disableCookies", boolean.class, true);
infoBuilder.addAttribute("webServices", Map.class, true);
infoBuilder.addReference("J2EEServer", J2EEServer.class);
infoBuilder.addReference("J2EEApplication", J2EEApplication.class);
@@ -468,6 +477,7 @@
"Cluster",
"Manager",
"crossContext",
+ "disableCookies",
"webServices",
"J2EEServer",
"J2EEApplication",
Modified: geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/TomcatWebConnector.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/TomcatWebConnector.java?rev=391831&r1=391830&r2=391831&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/TomcatWebConnector.java (original)
+++ geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/TomcatWebConnector.java Wed Apr 5 15:17:25 2006
@@ -10,6 +10,12 @@
* @version $Revision: 1.0$
*/
public interface TomcatWebConnector extends WebConnector {
+ public boolean isEmptySessionPath();
+ public void setEmptySessionPath(boolean emptySessionPath);
+ public int getMaxPostSize();
+ public void setMaxPostSize(int bytes);
+ public int getMaxSavePostSize();
+ public void setMaxSavePostSize(int kbytes);
public int getMinSpareThreads();
public void setMinSpareThreads(int threads);
public int getMaxSpareThreads();
Modified: geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/interceptor/PolicyContextBeforeAfter.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/interceptor/PolicyContextBeforeAfter.java?rev=391831&r1=391830&r2=391831&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/interceptor/PolicyContextBeforeAfter.java (original)
+++ geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/interceptor/PolicyContextBeforeAfter.java Wed Apr 5 15:17:25 2006
@@ -21,8 +21,7 @@
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
-import org.apache.catalina.connector.Request;
-import org.apache.geronimo.tomcat.realm.TomcatGeronimoRealm;
+import org.apache.geronimo.security.ContextManager;
public class PolicyContextBeforeAfter implements BeforeAfter{
@@ -39,13 +38,11 @@
public void before(Object[] context, ServletRequest httpRequest, ServletResponse httpResponse) {
//Save the old
- PolicyObject policyObject = new PolicyObject();
- policyObject.setContextId(PolicyContext.getContextID());
- //Save the old Request object in case it gets changed
- //with a x-context Dispatch
- policyObject.setRequest(TomcatGeronimoRealm.getRequest());
+ PolicyHolder policyHolder = new PolicyHolder();
+ policyHolder.setContextId(PolicyContext.getContextID());
+ policyHolder.setSubject(ContextManager.getCurrentCaller());
- context[policyContextIDIndex] = policyObject;
+ context[policyContextIDIndex] = policyHolder;
//Set the new
PolicyContext.setContextID(policyContextID);
@@ -62,15 +59,15 @@
}
//Replace the old
- PolicyObject policyObject = (PolicyObject)context[policyContextIDIndex];
-
- PolicyContext.setContextID(policyObject.getContextId());
- TomcatGeronimoRealm.setRequest(policyObject.getRequest());
+ PolicyHolder policyHolder = (PolicyHolder)context[policyContextIDIndex];
+ PolicyContext.setContextID(policyHolder.getContextId());
+ ContextManager.setCurrentCaller(policyHolder.getSubject());
}
- class PolicyObject{
- private String contextId = null;
- private Request request = null;
+ class PolicyHolder{
+
+ private Subject subject;
+ private String contextId;
public String getContextId() {
return contextId;
@@ -78,12 +75,13 @@
public void setContextId(String contextId) {
this.contextId = contextId;
}
- public Request getRequest() {
- return request;
+ public Subject getSubject() {
+ return subject;
}
- public void setRequest(Request request) {
- this.request = request;
+ public void setSubject(Subject subject) {
+ this.subject = subject;
}
}
}
+
Modified: geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/listener/DispatchListener.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/listener/DispatchListener.java?rev=391831&r1=391830&r2=391831&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/listener/DispatchListener.java (original)
+++ geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/listener/DispatchListener.java Wed Apr 5 15:17:25 2006
@@ -22,14 +22,19 @@
import javax.servlet.ServletResponse;
import org.apache.catalina.Container;
+import org.apache.catalina.Globals;
import org.apache.catalina.InstanceEvent;
import org.apache.catalina.InstanceListener;
+import org.apache.catalina.core.StandardWrapper;
import org.apache.geronimo.tomcat.GeronimoStandardContext;
import org.apache.geronimo.tomcat.interceptor.BeforeAfter;
+import org.apache.geronimo.tomcat.realm.TomcatGeronimoRealm;
+import org.apache.tomcat.util.buf.MessageBytes;
+import org.apache.tomcat.util.http.mapper.Mapper;
+import org.apache.tomcat.util.http.mapper.MappingData;
public class DispatchListener implements InstanceListener {
- //private static StackThreadLocal currentContext = new ThreadLocal();
private static ThreadLocal currentContext = new ThreadLocal() {
protected Object initialValue() {
return new Stack();
@@ -58,10 +63,15 @@
private void beforeDispatch(GeronimoStandardContext webContext,
ServletRequest request, ServletResponse response) {
+
BeforeAfter beforeAfter = webContext.getBeforeAfter();
if (beforeAfter != null) {
Stack stack = (Stack) currentContext.get();
- Object context[] = new Object[webContext.getContextCount()];
+ Object context[] = new Object[webContext.getContextCount() + 1];
+ String wrapperName = getWrapperName(request, webContext);
+ context[webContext.getContextCount()] = TomcatGeronimoRealm
+ .setRequestWrapperName(wrapperName);
+
beforeAfter.before(context, request, response);
stack.push(context);
}
@@ -74,7 +84,34 @@
Stack stack = (Stack) currentContext.get();
Object context[] = (Object[]) stack.pop();
beforeAfter.after(context, request, response);
+ TomcatGeronimoRealm
+ .setRequestWrapperName((String) context[webContext
+ .getContextCount()]);
+
}
+ }
+
+ private String getWrapperName(ServletRequest request,
+ GeronimoStandardContext webContext) {
+
+ MappingData mappingData = new MappingData();
+ Mapper mapper = webContext.getMapper();
+ MessageBytes mb = MessageBytes.newInstance();
+
+ String dispatchPath =
+ (String) request.getAttribute(Globals.DISPATCHER_REQUEST_PATH_ATTR);
+ mb.setString(webContext.getName() + dispatchPath);
+
+ try {
+ mapper.map(mb, mappingData);
+ StandardWrapper wrapper = (StandardWrapper) mappingData.wrapper;
+ return wrapper.getName();
+ } catch (Exception e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+
+ return null;
}
}
Modified: geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/realm/TomcatGeronimoRealm.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/realm/TomcatGeronimoRealm.java?rev=391831&r1=391830&r2=391831&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/realm/TomcatGeronimoRealm.java (original)
+++ geronimo/branches/1.1/modules/tomcat/src/java/org/apache/geronimo/tomcat/realm/TomcatGeronimoRealm.java Wed Apr 5 15:17:25 2006
@@ -57,7 +57,7 @@
private static final Log log = LogFactory.getLog(TomcatGeronimoRealm.class);
- private static ThreadLocal currentRequest = new ThreadLocal();
+ private static ThreadLocal currentRequestWrapperName = new ThreadLocal();
/**
* Descriptive information about this <code>Realm</code> implementation.
@@ -73,13 +73,9 @@
}
- public static Request getRequest() {
- return (Request) currentRequest.get();
- }
-
- public static Request setRequest(Request request) {
- Request old = (Request) currentRequest.get();
- currentRequest.set(request);
+ public static String setRequestWrapperName(String requestWrapperName) {
+ String old = (String) currentRequestWrapperName.get();
+ currentRequestWrapperName.set(requestWrapperName);
return old;
}
@@ -185,7 +181,8 @@
}
}
- currentRequest.set(request);
+ //Set the current wrapper name (Servlet mapping)
+ currentRequestWrapperName.set(request.getWrapper().getName());
// Which user principal have we already authenticated?
Principal principal = request.getUserPrincipal();
@@ -231,11 +228,7 @@
return false;
}
- Request request = (Request) currentRequest.get();
- assert request != null;
-
- Wrapper servletWrapper = request.getWrapper();
- String name = servletWrapper.getName();
+ String name = (String)currentRequestWrapperName.get();
/**
* JACC v1.0 secion B.19
Modified: geronimo/branches/1.1/modules/tomcat/src/test/org/apache/geronimo/tomcat/AbstractWebModuleTest.java
URL: http://svn.apache.org/viewcvs/geronimo/branches/1.1/modules/tomcat/src/test/org/apache/geronimo/tomcat/AbstractWebModuleTest.java?rev=391831&r1=391830&r2=391831&view=diff
==============================================================================
--- geronimo/branches/1.1/modules/tomcat/src/test/org/apache/geronimo/tomcat/AbstractWebModuleTest.java (original)
+++ geronimo/branches/1.1/modules/tomcat/src/test/org/apache/geronimo/tomcat/AbstractWebModuleTest.java Wed Apr 5 15:17:25 2006
@@ -45,7 +45,7 @@
/**
- * @version $Rev: 387050 $ $Date$
+ * @version $Rev$ $Date$
*/
public abstract class AbstractWebModuleTest extends TestCase {
@@ -79,6 +79,7 @@
valveChain,
null,
null,
+ false,
false,
null,
null,