0

我的tomcat服务器有问题。操作系统 - Ubuntu 服务器 12.04。

由 version.sh 回显

Using CATALINA_BASE:   /usr/share/tomcat7
Using CATALINA_HOME:   /usr/share/tomcat7
Using CATALINA_TMPDIR: /usr/share/tomcat7/temp
Using JRE_HOME:        /usr/lib/jvm/java-7-oracle/jre
Using CLASSPATH:       /usr/share/tomcat7/bin/bootstrap.jar:/usr/share/tomcat7/bin/tomcat-juli.jar
Server version: Apache Tomcat/7.0.26
Server built:   Apr 1 2013 08:32:04
Server number:  7.0.26.0
OS Name:        Linux
OS Version:     3.5.0-23-generic
Architecture:   amd64
JVM Version:    1.7.0_25-b15
JVM Vendor:     Oracle Corporation

这样我就有了运行应用程序的tomcat 7和java 1.7.0 JDK。

在我的 web.xml 定义的错误页面中:

<web-app version="3.0"
         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/j2ee/web-app_3_0.xsd">
    <error-page>
        <location>/error</location>
    </error-page>
</web-app>

错误页面已映射 - 一切正常。如果我手动打开它就可以了。但是我试图得到一些错误(例如404) - 我得到默认的tomcat 404页面。

我在 web.xml 中定义的位置

<error-page>
    <error-code>404</error-code>
    <location>/error</location>
</error-page>

我看到了我的错误页面。Servlets 3 支持只有位置的全局错误页面。我需要它。但它不起作用......为什么?

在我的 pom.xml 中定义了 servlet-api:

<dependency>
    <groupId>org.apache.tomcat</groupId>
    <artifactId>tomcat-servlet-api</artifactId>
    <version>7.0.26</version>
</dependency>

在我的本地主机上,tomcat(7.0.41)开始使用 IDEA 一切正常。但是我将我的应用程序部署到 ubuntu 服务器的地方 - 错误页面不想工作......

感谢您的回答。

4

1 回答 1

0

您可能遇到了这个问题:假设 Ubuntu Tomcat 版本 < 7.0.29,新的 Servlet 3.0 全局错误页面功能在 Tomcat 7 上不起作用。

于 2013-06-23T21:11:46.523 回答