刚刚处理过的一个问题,郁闷了好久啊!同行都有体会吧,程序员最大的苦恼了!哈哈
详细问题如下:
严重: Servlet.service() for servlet jsp threw exception
java.lang.ClassCastException: org.apache.catalina.util.DefaultAnnotationProcess
or cannot be cast to org.apache.AnnotationProcessor
at org.apache.jsp.login_jsp._jspInit(login_jsp.java:36)
at org.apache.jasper.runtime.HttpJspBase.init(HttpJspBase.java:52)
at org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:164)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:340)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
........
原因分析:
Tomcat中catalina.jar和jasper.jar都有AnnotationProcessor接口,所以运行时,就出错了:java.lang.ClassCastException: org.apache.catalina.util.DefaultAnnotationProcess
or。(来自网络)
针对这个错误,解决方法如下:
catalina.jar 和
网上另有解决方案:
修改了tomcat里的context.xml文件,在context 元素下添加
<Loader delegate="true" />
对于网上提供的第二种解决方案,杨小一测试之后并没有效果。希望广大的程序员同行多提意见哈!!!