【问题标题】:Issue with uri of custom tag library自定义标签库的 uri 问题
【发布时间】:2016-06-01 09:42:34
【问题描述】:

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

taglib 包含在 jsp 页面中,如下所示 bbb.tld 的位置是:Stores\WebContent\WEB-INF\bbb.tld

这个标签库包含在父 jsp 文件中,而不是从父 jsp 文件导入/包含。

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

相同的代码部署在多个测试环境中。在少数环境中,代码会抛出“未能找到资源”的错误,这是预期的。但是 taglib 在大多数环境中都可以正常工作,而不是错误的路径。

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

【问题讨论】:

    标签: java websphere jsp-tags taglib tld


    【解决方案1】:

    我建议在 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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-01-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多