Tomcat7 设置 - CentOS 6.3

Tomcat7 设置 - CentOS 6.3

我安装了 tomcat7 包,如下所示

[root@mongos lib]# yum list installed | grep tomcat7
tomcat7.noarch          7.0.39-1.jpp6   @eng-support-jpackage                   
tomcat7-admin-webapps.noarch
tomcat7-el-2.2-api.noarch
tomcat7-jsp-2.2-api.noarch
tomcat7-lib.noarch      7.0.39-1.jpp6   @eng-support-jpackage                   
tomcat7-servlet-3.0-api.noarch

并启用了管理器网络应用程序。

据我了解,tomcat7-servlet-3.0-api 为 Java Web 应用程序提供了所需的 Servlet 3.0 API。

现在,当我使用管理器应用程序部署 war 文件时,tomcat 无法找到 Servlet 3.0 api 中引入的 WebApplicationInitializer 类,该类不再需要在 war 文件内使用 web.xml 文件。

现在我相信 tomcat7 设置存在问题。

为了确认我的说法,我做了以下事情。

如果将相同的 war 文件部署到从以下位置下载的独立 tomcat7 上http://tomcat.apache.org,应用程序运行良好。

有人熟悉 CentOS 上 tomcat7 的正确设置吗?

谢谢。

答案1

以下信息帮助我解决了这个问题。

/etc/sysconfig/tomcat7

确保所有变量都是准确的。尤其是 JAVA_HOME 和 CATALINA_HOME。

tomcat 用户的文件夹所有权

确保 /var/log/tomcat7、/var/lib/tomcat7/webapps 和 /var/cache/tomcat7 的 tomcat 所有权。在大多数情况下,安装时这应该是正确的,但由于 tomcat6 和 tomcat7 的多次安装,可能会处于奇怪的状态。

正确的 tomcat 用户主文件夹

基于 RPM 的安装在 tomcat 用户下运行 tomcat7。我之前安装了 tomcat (v6),用户的主目录设置为 (/usr/共享/tomcat6)。安装 tomcat7 并卸载 tomcat6 时未设置正确的文件夹(/usr/共享/tomcat7)这导致 lib 文件夹位于/usr/共享/tomcat7无法找到,导致加载我的 webapp 时出现问题。您需要编辑密码文件 /etc/passwd文件并使 tomcat 用户拥有正确的主目录。

年龄变化率

相关内容