Fixed
Details
Priority
CriticalAffects versions
Fix versions
Components
Assignee
Steve SwinsburgSteve SwinsburgReporter
Beth KirschnerBeth KirschnerLabels
Details
Details
Priority
Affects versions
Fix versions
Components
Assignee
Steve Swinsburg
Steve SwinsburgReporter
Beth Kirschner
Beth KirschnerLabels
Created January 18, 2013 at 12:22 PM
Updated January 30, 2017 at 7:24 AM
Resolved January 28, 2013 at 9:29 PM
The implementation of org.apache.catalina.deploy.WebXml changed between 7.0.27 and 7.0.35:
Here is from src of tomcat 7.0.27:
public void addServletMapping(String urlPattern, String servletName) {
servletMappings.put(urlPattern, servletName);
servletMappingNames.add(servletName);
}
Here is what inside 7.0.35:
public void addServletMapping(String urlPattern, String servletName) {
String oldServletName = servletMappings.put(urlPattern, servletName);
if (oldServletName != null) {
// Duplicate mapping. As per clarification from the Servlet EG,
// deployment should fail.
throw new IllegalArgumentException(sm.getString(
"webXml.duplicateServletMapping", oldServletName,
servletName, urlPattern));
}
servletMappingNames.add(servletName);
}
...causing this error:
2013-01-18 11:30:05,184 [localhost-startStop-1] ERROR org.apache.tomcat.util.digester.Digester - End event threw exception
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.tomcat.util.IntrospectionUtils.callMethodN(IntrospectionUtils.java:911)
...
Caused by: java.lang.IllegalArgumentException: The servlets named [sakai.sitestats] and [sakai.sitestats.admin] are both mapped to the url-pattern /sitestats-tool/* which is not permitted
at org.apache.catalina.deploy.WebXml.addServletMapping(WebXml.java:335)