繁体   English   中英

java error:message无效的tld文件:有关更多详细信息,请参阅JSP 2.2规范第7.3.1节

[英]java error: message Invalid tld file: see JSP 2.2 specification section 7.3.1 for more details

当我访问本地java tomcat页面时,出现错误,请帮忙检查一下这有什么问题,谢谢

jsp代码

<%@ taglib prefix="p" uri="/WEB-INF/classes/tld/pagertag.tld"%>

错误日志:

SEVERE: Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: Invalid tld file: "/WEB-INF/classes/tld/pagertag.tld", see JSP 2.2 specification section 7.3.1 for more details

at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:56)
at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:445)
at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:117)
at org.apache.jasper.compiler.TagLibraryInfoImpl.generateTLDLocation(TagLibraryInfoImpl.java:347)
at org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:154)
at org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:419)
at org.apache.jasper.compiler.Parser.parseDirective(Parser.java:484)
at org.apache.jasper.compiler.Parser.parseElements(Parser.java:1421)
at org.apache.jasper.compiler.Parser.parse(Parser.java:138)
at org.apache.jasper.compiler.ParserController.doParse(ParserController.java:242)
at org.apache.jasper.compiler.ParserController.parse(ParserController.java:102)

根据文件

标记库描述符文件的名称使用扩展名.tld,扩展名表示标记库描述符文件。 在JAR文件中部署时,标记库描述符文件必须位于META-INF目录或其子目录中。 直接部署到Web应用程序时,标记库描述符文件必须始终位于WEB-INF目录或其某个子目录中。 TLD文件不应放在/ WEB-INF / classes或/ WEB-INF / lib中,并且不得放在/ WEB-INF / tags或其子目录中, 除非命名为implicit.tld且用于配置隐式标签库及其JSP版本和tlib版本。

您可以使用rename implicit.tld将标记库lib放在WEB-INF / tags中

在jsp-2_2中

JSP.7.3.1标识标记库描述符标记库描述符文件的名称使用扩展名.tld,扩展名表示标记库描述符文件。 在JAR文件中部署时,标记库描述符文件必须位于META-INF目录或其子目录中。 直接部署到Web应用程序时,标记库描述符文件必须始终位于WEB-INF目录或其某个子目录中。 TLD文件不应放在/ WEB-INF / classes或/ WEB-INF / lib中,并且不得放在/ WEB-INF / tags或其子目录中,除非命名为implicit.tld且用于配置隐式标签库及其JSP版本和tlib版本。

.tld文件不能在classes,lib,tags文件夹或子文件夹中。

作为快速解决方案,您可以从tomcat 7.0.64的lib文件夹中复制以下两个库并将其放在项目根目录中,或者如果您使用maven,则将这两个作为依赖项添加到pom.xml文件中:

jasper.jar jasper-el.jar

这将解决您的问题。

似乎问题是与tomcat版本有关。 将tomcat版本从tomcat 8更改为7.0.55后,它可以正常工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM