首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >可以从WEB-INF\lib\{*.jar}\META-INF\resources\WEB-INF目录访问tld文件吗?

可以从WEB-INF\lib\{*.jar}\META-INF\resources\WEB-INF目录访问tld文件吗?
EN

Stack Overflow用户
提问于 2014-09-09 16:16:48
回答 1查看 2K关注 0票数 3

我有一个jsp文件,其中包含如下标记:

代码语言:javascript
复制
<%@ taglib prefix="abc" uri="/WEB-INF/tlds/xyz.tld" %>

在我的应用程序中,部署结构是:

代码语言:javascript
复制
WEB-INF
  |-lib
      |-some.jar
          |-META-INF
              |-resources
                  |-WEB-INF
                      |-tlds
                          |-xyz.tld

这在Tomcat7中运行得很好,但是当我将我的应用程序部署到JBoss as 7时,它找不到tld文件。

那么,这是JBoss的问题吗(不支持Servlet3.0?)或者只是不能从jar中的META-INF\resources\WEB-INF目录访问tld文件?

EN

回答 1

Stack Overflow用户

发布于 2014-12-04 10:18:27

这不是Servlet 3.0的问题,而是JSP 2.2的问题。(它们是不同的规范)。

标记库声明的uri部分不是位置。它是一个键,必须与

代码语言:javascript
复制
<uri>your/tld/uri</uri>

元素在tld文件中。

如果缺少此元素,则必须在web.xml的标记库映射中声明它,并在其中提供uri:

代码语言:javascript
复制
<jsp-config>
     <taglib>
         <taglib-uri>/WEB-INF/tlds/xyz.tld</taglib-uri>
         <taglib-location>/WEB-INF/lib/some.jar/META-INF/resources/WEB-INF/tlds/xyz.tld</taglib-location>
     </taglib>
</jsp-config>
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25739728

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档