uri自定义标记库

时间:2016-02-19 17:53:55

标签: java websphere jsp-tags taglib tld

我在使用自定义标记库时遇到了一个奇怪的问题。 在我的一个jsp页面中,自定义tld文件的相对uri路径是错误的。

Taglib包含在jsp页面中,如下所示     <%@ taglib prefix =“aaa”uri =“WEB-INF / bbb.tld”%> bbb.tld的位置是:Stores \ WebContent \ WEB-INF \ bbb.tld

此taglib包含在父jsp文件中,而不是从父级导入/包含jsp文件。

我的应用程序有几个其他jsp文件,其中相同的taglib与正确的路径一起使用。

在多个测试环境中部署相同的代码。在一些环境中,代码抛出了“无法找到资源”的错误,这是预期的。但是taglib在大多数环境中运行良好,而不是错误的路径。

为什么不同服务器环境之间的行为存在差异?如果无法解析uri,服务器是否会自动查找所有tld文件?

1 个答案:

答案 0 :(得分:0)

我建议在WEB-INF之前添加一个尾部斜杠('/')。你可以试试以下吗?

<%@ taglib prefix="aaa" uri="/WEB-INF/bbb.tld" %>

希望这会在所有服务器实例中为您提供一致的结果。此外,在Stores \ WebContent \ WEB-INF \ bbb.tld中使用TLD似乎与使用IDE(例如Eclipse)开发应用程序有关。将应用程序导出为EAR或WAR后,路径看起来更像Stores.war / WEB-INF / bbb.tld