小记今天使用Tomcat时,Servlet和jsp遇到的小问题
1.Jsp异常报告 java.lang.ClassNotFoundException
这个问题是在学习jsp导入java的包时遇到的:
运行Tomcat后打开路径正确的jsp文件,出现如上图的报错。
org.apache.jasper.JasperException: java.lang.ClassNotFoundException: org.apache.jsp.WebContent.importtest_jsp
运行不了,而同一目录的另外一个jsp文件可以正常运行。
解决方案:
检测导入的包是否多加了“;”
去掉分号就可以正常运行。
如果还是不行,参考网上的方法检查jdk版本是否和Tomcat匹配,和library是否全部正确导入。
2. Servlet 输出中文全部是 ‘?’
在有使用request和response的方法中加入以下3句:
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
response.setCharacterEncoding("UTF-8");
request和response都设为UTF-8格式
3.html调用Servlet找不到servlet
可能是html调用的路径不太对
在html没有设置根路径之类的情况下,html的action要使用完整的路径。
如:
第一段Tomcat 是Tomcat程序的运行IP地址和端口号,一般默认
第二段DWP是你的Danymic Web Project的项目名称
第三段是你web.xml里设置servlet映射的名称
4.servlet返回转跳html找不到文件
这个我想上面一样使用了html文件在Tomcat中的完整路径 也说找不到
http://localhost:8080/student/input.html ×
只能用它的文件路径替代
file:///D:/apache-tomcat-9.0.29-windows-x64/apache-tomcat-9.0.29/webapps/student/input.html √
具体原因我还没弄懂,等我弄懂了,有时间再来补充吧
虽然只是些很细小的错误,却把我坑到了>﹏< 先这样吧