tomcat6 的一个应用,修改一个jsp页面后,重新启动报错:
org.apache.jasper.JasperException: Unable to compile class for JSP:
An error occurred at line: 1 in the generated java file
The type java.io.ObjectInputStream cannot be resolved. It is indirectly referenced from required .class files
发现生产环境是jdk1.8
tomcat6 好像不支持jdk1.8吧,升级到tomcat8.5
需要改端口,按以下步骤修改:
第二步:修改修改http访问端口(默认为8080端口)
<Connector port="8070" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="20000"
disableUploadTimeout="true" URIEncoding="GBK" />
将8080修改为第一个tomcat不在使用的端口号。此处所设的端口号即是以后访问web时所用的端口号。
第三步:修改Shutdown端口(默认为8005端口)
<Server port="8005" shutdown="SHUTDOWN" debug="0">
将8005修改为没有在使用的端口号,例如8095。
第四步:修改JVM启动端口(默认为8009端口)
<Connector port="8009" enableLookups="false" redirectPort="8443" debug="0" protocol="AJP/1.3" />
将8009修改为没有在使用的端口号,例如8099。
重新启动,发现端口还是8080
Tomcat 端口变更失效的问题的解决经历
按这个文档调整,启动正常。
但控制台有乱码,查阅 tomcat8.5.38控制台输出乱码的处理,问题解决。
部署到测试环境,有中文乱码问题。
按 Tomcat控制台中文乱码设置UTF-8无效,通过修改注册表解决 这篇文章解决
推测原因,测试环境有安装版本tomcat,注册表中,对字符集有相关定义,定义的不是utf-8