开发者社区> 问答> 正文

ClassNotFoundException: JspException?报错

给这个问题耗上了, 我一定要把罪魁祸首找不来 找不出来不下班!!!

java.lang.ClassNotFoundException: JspException org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1711) org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1556) java.lang.Class.getDeclaredMethods0(Native Method) java.lang.Class.privateGetDeclaredMethods(Class.java:2427) java.lang.Class.getDeclaredMethods(Class.java:1791) java.beans.Introspector$1.run(Introspector.java:1287) java.security.AccessController.doPrivileged(Native Method) java.beans.Introspector.getPublicDeclaredMethods(Introspector.java:1285) java.beans.Introspector.getTargetMethodInfo(Introspector.java:1151) java.beans.Introspector.getBeanInfo(Introspector.java:402) java.beans.Introspector.getBeanInfo(Introspector.java:168) java.beans.Introspector.getBeanInfo(Introspector.java:229) java.beans.Introspector.<init>(Introspector.java:383) java.beans.Introspector.getBeanInfo(Introspector.java:168) org.apache.jasper.compiler.Generator$TagHandlerInfo.<init>(Generator.java:3943) org.apache.jasper.compiler.Generator$GenerateVisitor.getTagHandlerInfo(Generator.java:2209) org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1640) org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1539) org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2376) org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2428) org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2434) org.apache.jasper.compiler.Node$Root.accept(Node.java:475) org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2376) org.apache.jasper.compiler.Generator.generate(Generator.java:3489) org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:250) org.apache.jasper.compiler.Compiler.compile(Compiler.java:373) org.apache.jasper.compiler.Compiler.compile(Compiler.java:353) org.apache.jasper.compiler.Compiler.compile(Compiler.java:340) org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:646) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334) javax.servlet.http.HttpServlet.service(HttpServlet.java:722) clap.bnLog.filter.BnLogFilter.doFilter(BnLogFilter.java:34) clap.authority.filter.FunOrgAuFilterServlet.doFilter(FunOrgAuFilterServlet.java:33) clap.authority.filter.FilterServlet.doFilter(FilterServlet.java:91) clap.frames.i18n.filter.LocalFilter.doFilter(LocalFilter.java:71) clap.authority.xss.XSSSecurityFilter.doFilter(XSSSecurityFilter.java:68) clap.frames.web.SetEncodingFilter.doFilter(SetEncodingFilter.java:33)


===== 19:44 更新 =====

问题终于解决了,但是为什么导致这样的问题还是没能找出来。不过发现这个问题还是因为个人的操作失误导致的,  自作自受啊, 下不为例以后就张姿势了。

说一下我的环境和编译、部署的流程:

环境: 

项目没有使用ant之类的编译工具,运行项目也没有使用IDE内置的容器运行。

而是使用IDE编译代码,再单独启动容器跑程序。 

而问题就出现在编译阶段,因为在IDE中classpath有问题,导致IDE编译没有正确完成,当IDE classpath问题解决了,再启动容器没有报错,也可以正常访问页面。结论就是编译的代码不完整,而不是缺少jar文件或者冲突。一切都是自己咎由自取,活该!

为什么代码编译不完整运行时抛这么奇怪的错误,这个结果还没有弄清楚明白,估计这个要看容器的类加载时肿么了一个回事了,暂且不说了,以后有空估计也不会去看了。如果哪位无聊可以研究下。

终于搞定了,可以继续推进工作了。撤~~~ 


  

展开
收起
爱吃鱼的程序员 2020-06-22 10:54:40 820 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    感觉java的这种报错特逗比,又臭又长,全是些没用的。

    井底之蛙你特逗,你一个PHPer当然看不懂了。。

     Java的报错,看两个地方,第一个就是第一行,java.lang.ClassNotFoundException:JspException

    ,第二个地方就是这一堆类中你自己的类中的第一行,也就是clap.bnLog.filter.BnLogFilter.doFilter(BnLogFilter.java:34)回复 @南湖船老大:嗯也有可能回复 @大师兄悟空:初始化的时候,filter用到那个类了么,所以就这么报错了。你想复杂了吧回复 @南湖船老大:嗯是的也不知道为什么一个类编译不成功会导致这样奇怪的问题,还没时间研究。你可以再刷新下看看我更新的内容能不能找出更多的线索回复 @大师兄悟空:那就是某个类没编译成功了,没具体的代码不好说问题在哪谢谢不过到最后还是发现是自己编译的问题与jar包无关也与web容器无关

    哎呦喂,说错话了。。。。。但我还是得坚持一下。省的俺们拍黄片的因为我自己不检点被集体鄙视。

    我用过的学过的各种语言里,最逗比的报错就是java的,又臭又长,莫名其妙,就跟一把沙子扔垃圾堆里一样。别跟php比,就明确性而言,完全一个天上一个地下。就这一大篇,搁php里就TM一行,类似这样:

    fatalerror:callaundefinedclass{class_name}in/path/to/file.phplinexx

    找不着类呗,至于怎么找不着,一样没法告诉你,但是真没这么多废话。当然了有些php框架不学好,报个错也学着人家来一堆高端大气上档次的屁话,这个也得批评。

    船老大,你给人第一个地方第二个地方的,解决问题了吗?这类报错本就云里雾里,多半没用,你靠这个找不着问题所在完全正常,恰证明我说的就是大实话。我一个拍黄片的素质低,骂了句java莫名其妙就触碰您了,真对不住,不知道您是他们家亲戚,您水平高,千万别跟我一般见识。

    回复 @南湖船老大:没跟您比谁会得多,您想多了。去第二句话里提到的类里面去翻所有引入的类,已经很清晰了。就别提你用过学过的各种语言,好像你很熟似得。那这么说,我用过学过的语言,双手双脚都数不过来。像PHP这种写错了连IDE都认不出,只能人肉排错的语言就别提了。

    是不是要火我先留个名

    遇到一样的问题 ,重新编译没有问题了。
    2020-06-23 11:59:30
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载