`

org.apache.jasper.JasperException: Failed to load or instantiate TagExtraInfo cl

阅读更多

exception

org.apache.jasper.JasperException: Failed to load or instantiate TagExtraInfo class: org.apache.struts.taglib.html.MessagesTei
	org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:564)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:353)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:319)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

 

root cause

org.apache.jasper.JasperException: Failed to load or instantiate TagExtraInfo class: org.apache.struts.taglib.html.MessagesTei
	org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:50)
	org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407)
	org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:279)
	org.apache.jasper.compiler.TagLibraryInfoImpl.createTagInfo(TagLibraryInfoImpl.java:418)
	org.apache.jasper.compiler.TagLibraryInfoImpl.parseTLD(TagLibraryInfoImpl.java:249)
	org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:162)
	org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:418)
	org.apache.jasper.compiler.Parser.parseDirective(Parser.java:474)
	org.apache.jasper.compiler.Parser.parseElements(Parser.java:1424)
	org.apache.jasper.compiler.Parser.parse(Parser.java:131)
	org.apache.jasper.compiler.ParserController.doParse(ParserController.java:211)
	org.apache.jasper.compiler.ParserController.parse(ParserController.java:100)
	org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:166)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:305)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:285)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:272)
	org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:565)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:313)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:319)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

 

root cause

java.lang.ClassNotFoundException: org.apache.struts.taglib.html.MessagesTei
	org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1354)
	org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1200)
	org.apache.jasper.compiler.TagLibraryInfoImpl.createTagInfo(TagLibraryInfoImpl.java:415)
	org.apache.jasper.compiler.TagLibraryInfoImpl.parseTLD(TagLibraryInfoImpl.java:249)
	org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:162)
	org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:418)
	org.apache.jasper.compiler.Parser.parseDirective(Parser.java:474)
	org.apache.jasper.compiler.Parser.parseElements(Parser.java:1424)
	org.apache.jasper.compiler.Parser.parse(Parser.java:131)
	org.apache.jasper.compiler.ParserController.doParse(ParserController.java:211)
	org.apache.jasper.compiler.ParserController.parse(ParserController.java:100)
	org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:166)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:305)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:285)
	org.apache.jasper.compiler.Compiler.compile(Compiler.java:272)
	org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:565)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:313)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:319)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)





 
这个问题困扰了我很长时间,上网搜了一下,很多人说将“WEB-INF/lib”下的struts.jar和servlet.jar删掉,我试了一下,没用。
看了一个老外的帖子,三个方法对我也没用,这里贴出来,可能对其他童鞋有帮助:
I figuered out solution to this problem yesterday. This problem can occur because of 3 things.... 1)Your struts jar files are missing in the WEB-INF/lib directory
2) The message resources config i.e. of your ApplicationResources.properties is written incorrectly in the struts-config.xml. if your file ApplicationResources.properties is under classes folder, then struts-config.xml should contain following entry.... <!-- Message Resources Configuration --> <message-resources parameter="ApplicationResources"/>
3) This is most important reason why application failed on my PC, I forgot to put action servlet configuration and struts tag library descriptors in WEB.XML file... here is a snippet of my WEB.XML after the problem was solved <!-- Action Servlet Configuration --> <servlet> <servlet-name>action</servlet-name> <servlet-class>org.apache.struts.action.ActionServlet</servlet-class> <init-param> <param-name>config</param-name> <param-value>/WEB-INF/struts-config.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <!-- Action Servlet Mapping --> <servlet-mapping> <servlet-name>action</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> <!-- Struts Tag Library Descriptors --> <taglib> <taglib-uri>/WEB-INF/tlds/struts-bean.tld</taglib-uri> <taglib-location>/WEB-INF/tlds/struts-bean.tld</taglib-location> </taglib> ( all my tab libraries reside in /WEB-INF/tlds folder)
最后问题终于解决了,首先我将“WEB-INF”写成了“Web-INF”,直接连web.xml都找不到了。
主要解决方法有两个:
1、将struts.jar直接放到tomcat的lib包中,在Eclipse中的build path可以使用绝对路径
2、将struts.jar放到"WEB-INF/lib"中,tomcat的lib包下就不用放了,然后在Eclipse中的build path 中使用相对路径

还有一个可能的重要原因:

你使用的struts的tld文件跟你的Struts的jar包的版本冲突!!!
tld文件中声明class为“org.apache.struts.taglib.html.MessagesTei”,但你的struts的
jar包中根本就不存在这个类,自然会抛出ClassNotFoundException

分享到:
评论

相关推荐

    org.apache.jasper.JasperException: Template /template/ajax/text.ftl not found

    org.apache.jasper.JasperException: Template /template/ajax/text.ftl not found异常解决包

    org.apache.jasper.JasperException: java.util.MissingResourceException 解决方案

    在Java Web开发中,我们经常会遇到“org.apache.jasper.JasperException: java.util.MissingResourceException”这样的错误。这个异常通常发生在尝试访问一个不存在的资源文件时,比如国际化(i18n)配置文件。本文...

    解决MyEclipse下开发Struts异常:org.apache.struts.taglib.bean.CookieTei.doc 下载

    在本篇文章中,我们将深入探讨如何解决在MyEclipse环境下开发Struts应用时遇到的一个常见问题:“org.apache.jasper.JasperException: Failed to load or instantiate TagExtraInfo class: org.apache.struts.taglib...

    org.apache.jasper 的jar包下载

    `org.apache.jasper_5.5.17.v201101211617.jar` 文件是Apache Jasper的一个特定版本,发布于2011年1月21日。这个jar包包含了处理JSP所需的所有类和资源,包括编译器、错误处理机制和相关工具。使用此版本可能需要...

    解决 tomcat9 在Ubuntu 安装下 访问tomcat 首页 java.lang.ClassNotFoundException: org.apache.jsp.index_jsp 错误

    在阿里云买了一台Ubuntu16.04的ECS服务器,安装完Tomcat 9 和JDK 1.8之后,兴致勃勃的访问服务器的8080端口,发现竟然报错:org.apache.jasper.JasperException: java.lang.ClassNotFoundException: org.apache.jsp....

    JSTL必要包(jstl.jar和standard.jar)

    解决struts2中报错:“HTTP Status 500 - org.apache.jasper.JasperException: The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed with this ...

    org.apache.jasper.jar

    jasper包

    初用Google App Engine for Java (org.apache.jasper.JasperExceptio; org.datanucleun)

    `org.apache.jasper.JasperException`通常出现在JSP(JavaServer Pages)处理过程中,当JSP引擎(如Tomcat中的Apache Jasper)遇到编译或执行问题时会抛出这个异常。这可能是因为JSP文件有语法错误、找不到引用的...

    jasper-compiler.jar

    当遇到org.apache.jasper.JasperException: Template /template/ajax/text.ftl not found. - Class: freemarker.template.Configuration 这种错误的时候使用

    关于springboot我出过的那些错误.docx

    错误二:org.apache.jasper.JasperException: /WEB-INF/jsp/show.jsp (line: [2], column: [18]) quote symbol expected 错误原因:show.jsp 中第二行少了个“” 解决方式:加上缺少的“ 错误三:org.apache....

    jasper-1.900.1.tar.gz

    《Jasper库1.900.1版的深度解析》 Jasper,作为一个开源的JPEG 2000编解码库,是处理JPEG 2000图像格式的关键工具。这个名为"jasper-1.900.1.tar.gz"的压缩包包含了Jasper库的1.900.1版本,它提供了对JPEG 2000标准...

    org.apache.jasper.glassfish-2.1.0.v201110031002.jar

    java运行依赖jar包

    最全jasper相关jar包

    里面有jasper.jar,jasper-compiler.jar,jasper-compiler-jdt-5.5.15.jar,jasper-el.jar,jasper-jdt.jar,jasper-runtime.jar

    Java服务器Tld标签文件扫描器(含源代码)

    会输出提示信息“org.apache.jasper.servlet.TldScanner.scanJars 至少有一个JAR被扫描用于TLD但尚未包含TLD。 ” 当然解决办法很简单,就是找到 Tomcat 服务器安装目录下的 conf 文件夹下的**catalina.properties...

    jasper-1.900.1

    Jasper,JPEG2000标准第一部分的C语言实现。Linux下编译:./configure make make install 执行命令:jasper -F outputfile -f inputfile -o compress option

    jasper-1.900.1.zip

    《图像压缩技术:深入解析jasper-1.900.1开源库》 在信息技术领域,图像处理和压缩技术是不可或缺的一部分。本文将详细探讨一个名为“jasper-1.900.1”的开源库,它包含了各种图像格式的编解码源码,对于开发者来说...

    Tomcat服务器源码

    Jasper的主要类有`org.apache.jasper.JspC`和`org.apache.jasper.compiler.Generator`。 4. **Juli**:Tomcat的日志系统,提供灵活的日志记录配置。`org.apache.juli.logging.LogFactory`和`org.apache.juli....

    Struts常见错误及原因分析.

    #### 二、异常 org.apache.jasper.JasperException: Cannot retrieve definition for form bean null **异常描述**: 此异常出现的原因在于Struts框架未能根据`struts-config.xml`文件中的映射找到预期的Form Bean...

    apache-tomcat-9.0.8-src源码资源

    Tomcat的安全特性包括用户认证、角色授权等,这在`org.apache.catalina.security`和`org.apache.catalina.authenticator`包中实现。 7. **线程模型**: Tomcat使用Executor线程池来处理请求,相关代码在`org....

Global site tag (gtag.js) - Google Analytics