我已经安装了如下的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并启用了管理员web应用程序。
据我理解,tomcat7-servlet-3.0-api为Java应用程序提供了所需的Servlet3.0API。
现在,当我使用管理器应用程序部署war文件时,tomcat无法找到Servlet3.0API中引入的WebApplicationInitializer类,它消除了war文件中对web.xml文件的需求。
现在,我相信在tomcat7设置中存在一个问题。
为了证实我的说法,我做了以下工作。
如果在从tomcat7下载的独立http://tomcat.apache.org上部署相同的war文件,则应用程序可以正常工作。
是否有人熟悉tomcat7在CentOS上的正确设置?
谢谢。
发布于 2014-07-22 17:03:06
下面的一些信息帮助我解决了这个问题。
确保所有变量都是准确的。尤其是JAVA_HOME & CATALINA_HOME。
tomcat用户
所有权
确保tomcat对/var/log/tomcat 7、/var/lib/tomcat 7/webapp&/var/cache/tomcat 7的所有权,在大多数情况下,安装应该是正确的,但由于tomcat6和tomcat7多次安装,这可能处于奇怪的状态。
的正确主文件夹
基于RPM的安装在tomcat用户下运行tomcat7。我以前安装了tomcat ( v6 ),用户的主目录被设置为(/usr/share/tomcat 6)。在安装tomcat7和卸载tomcat6时,没有设置正确的文件夹(/usr/tomcat6/tomcat7 7 )。这导致没有找到/usr/share/tomcat7 7下的lib文件夹,导致加载我的webapp时出现问题。您需要编辑/etc/passwd文件,并使tomcat用户拥有正确的主目录。
https://serverfault.com/questions/614300
复制相似问题