Merge branch '1.2.x'

pull/4867/head
Stephane Nicoll 9 years ago
commit a835912c04

@ -661,6 +661,10 @@ public class TomcatEmbeddedServletContainerFactory
private static class TomcatErrorPage { private static class TomcatErrorPage {
private static final String ERROR_PAGE_TOMCAT7 = "org.apache.catalina.deploy.ErrorPage";
private static final String ERROR_PAGE_TOMCAT = "org.apache.tomcat.util.descriptor.web.ErrorPage";
private final String location; private final String location;
private final String exceptionType; private final String exceptionType;
@ -679,14 +683,13 @@ public class TomcatEmbeddedServletContainerFactory
private Object createNativePage(ErrorPage errorPage) { private Object createNativePage(ErrorPage errorPage) {
Object nativePage = null; Object nativePage = null;
try { try {
if (ClassUtils.isPresent( if (ClassUtils.isPresent(ERROR_PAGE_TOMCAT, null)) {
"org.apache.tomcat.util.descriptor.web.ErrorPage", null)) { nativePage = BeanUtils.instantiate(ClassUtils
nativePage = new org.apache.tomcat.util.descriptor.web.ErrorPage(); .forName(ERROR_PAGE_TOMCAT, null));
} }
else if (ClassUtils.isPresent("org.apache.catalina.deploy.ErrorPage", else if (ClassUtils.isPresent(ERROR_PAGE_TOMCAT7, null)) {
null)) {
nativePage = BeanUtils.instantiate(ClassUtils nativePage = BeanUtils.instantiate(ClassUtils
.forName("org.apache.catalina.deploy.ErrorPage", null)); .forName(ERROR_PAGE_TOMCAT7, null));
} }
} }
catch (ClassNotFoundException ex) { catch (ClassNotFoundException ex) {
@ -701,8 +704,7 @@ public class TomcatEmbeddedServletContainerFactory
public void addToContext(Context context) { public void addToContext(Context context) {
Assert.state(this.nativePage != null, Assert.state(this.nativePage != null,
"Neither Tomcat 7 nor 8 detected so no native error page exists"); "Neither Tomcat 7 nor 8 detected so no native error page exists");
if (ClassUtils.isPresent("org.apache.tomcat.util.descriptor.web.ErrorPage", if (ClassUtils.isPresent(ERROR_PAGE_TOMCAT, null)) {
null)) {
org.apache.tomcat.util.descriptor.web.ErrorPage errorPage = (org.apache.tomcat.util.descriptor.web.ErrorPage) this.nativePage; org.apache.tomcat.util.descriptor.web.ErrorPage errorPage = (org.apache.tomcat.util.descriptor.web.ErrorPage) this.nativePage;
errorPage.setLocation(this.location); errorPage.setLocation(this.location);
errorPage.setErrorCode(this.errorCode); errorPage.setErrorCode(this.errorCode);

Loading…
Cancel
Save