容器开始时默认为tomcat6,由于log4j2等原因需要jdk升级到8,tomcat也要同样升级到8,再次启动报异常
java.lang.ClassNotFoundException: org.apache.catalina.core.JasperListener
原因是tomcat6中的一些bean已经在tomcat8中不存在
tomcat6的server.xml,注意标色部分
<?xml version='1.0' encoding='utf-8'?>
<Server port="8001" shutdown="SHUTDOWN"><Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
<Listener className="org.apache.catalina.core.JasperListener" />
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" /><GlobalNamingResources>
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
</GlobalNamingResources><Service name="Catalina">
<Connector port="1601" maxParameterCount="1000" protocol="HTTP/1.1" redirectPort="8443" maxSpareThreads="750" maxThreads="1000" minSpareTHreads="50" acceptCount="1000" connectionTimeout="20000" URIEncoding="UTF-8"/>
<Engine name="Catalina" defaultHost="localhost" jvmRoute="s1"><Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
<Host name="localhost" appBase="webapps"
unpackWARs="false" autoDeploy="false"
xmlValidation="false" xmlNamespaceAware="false"></Host>
</Engine>
tomcat8的server.xml,以注释掉的正确配置
<?xml version='1.0' encoding='utf-8'?>
<Server port="8001" shutdown="SHUTDOWN"><Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
<!-- <Listener className="org.apache.catalina.core.JasperListener" />-->
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
<!-- <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />-->
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" /><GlobalNamingResources>
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
</GlobalNamingResources><Service name="Catalina">
<Connector port="1601" maxParameterCount="1000" protocol="HTTP/1.1" redirectPort="8443" maxSpareThreads="750" maxThreads="1000" minSpareTHreads="50" acceptCount="1000" connectionTimeout="20000" URIEncoding="UTF-8"/>
<Engine name="Catalina" defaultHost="localhost" jvmRoute="s1"><Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
<Host name="localhost" appBase="webapps"
unpackWARs="false" autoDeploy="false"
xmlValidation="false" xmlNamespaceAware="false"></Host>
</Engine>