Tomcat7中的Java 1.5 war产生InvokerServlet异常?
嗨。。我已经部署了我的系统。托马卡特战争。x、 因为我使用了java1。5.当时JAVA_HOME=java5path,CATALINA_HOME=tomcat5。以CentOS为单位的x路径。它工作得很好
现在我的问题是
我在Tomcat7部署同样的战争。带有JAVA_HOME=java1的x。7和CATALINE_HOME=tomcat7。我得到了以下错误
java.lang.ClassNotFoundException: org.apache.catalina.servlets.InvokerServlet
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)...
我还用java1编译了代码。7,并部署在Tomcat7中。。同样的错误。有谁能建议我如何克服这个问题吗
谢谢
# 1 楼答案
我认为Tomcat7支持1.6及以上版本
请参见此处:http://tomcat.apache.org/whichversion.html
# 2 楼答案
由于Tomcat7支持新的Servlet标准版本3.0,我们必须注册内部使用的所有Servlet类。这是出于安全目的
Tomcat6及以下版本,web。xml
Tomcat 7及以上版本
在MyServletContextListener中。java扩展了
ServletContextListener
,并使用(重写)contextInitialized方法获取所有类和注册,如下面的示例代码段# 3 楼答案
我在从Tomcat6迁移到Tomcat7时遇到了这个问题。Ricky over-here,改进了一个几乎对我有效的解决方案。我必须改进它才能为我工作。我给他的听众换了一个小赌注,效果很好。我希望它能帮助其他人:
干杯