【问题标题】:jstl cannot be found though correctly placed虽然正确放置,但找不到 jstl
【发布时间】:2011-11-15 16:24:42
【问题描述】:

不幸的是,很长一段时间后,我又重新发布了同样的问题: org.apache.jasper.JasperException: 绝对 uri:http://java.sun.com/jsp/jstl/core 无法在 web.xml 或随此应用程序部署的 jar 文件中解析

我第一次通过将 jstl-1.2 放在 web-inf/lib 中来解决它,这次我无论如何都无法理解为什么这不起作用。

“有趣”的是,我还有很多其他项目正在启动和运行,它们的配置树完全相同: /web-inf/lib/jstl-1.2.jar

在 web-xml 中没有引用这些 jar,它们只是在 web-apps-libraries 中

应用程序运行良好,但只要我在我请求的页面中插入 taglib 行:

我得到了例外,

你有什么建议吗? taglib 可以“从工作项目中复制” 类路径很好,网络应用程序库也很好

谢谢,5 小时后不知道如何解决这个问题。

【问题讨论】:

  • 我怀疑你遇到了这里提到的问题:stackoverflow.com/questions/845776/jstl-taglib-uri-is-obsolete
  • 是的,请确保您使用正确的 servlet 规范版本进行了定义。根据您使用的实现,您可能还需要standard.jar。
  • 这是问题所在,我在配置中找不到任何问题,web.xml 中的 Web 应用版本是 2.5,所有 jar 都在正确的位置。
  • 您使用的是 IDE 吗?如果有,是哪个? JAR 文件是否也真的在 IDE 部署的 WAR/文件夹中?
  • 这可能会有所帮助:stackoverflow.com/questions/31043869/…

标签: java jsp tomcat jstl


【解决方案1】:

我已经有一段时间没有处理这个问题了。我曾经在我经常没有“网络连接”的国家做开发。您必须将 tablib 行中的 uri 设置为可以在运行时找到的位置。您可以指向本地副本。我想我在 uri 中设置了一个实际的文件系统位置。但是,不记得那个细节(并且我没有靠近正确的计算机来验证围绕这个问题的编码)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-17
    • 2014-06-21
    • 1970-01-01
    • 2011-02-11
    • 2014-06-02
    • 1970-01-01
    相关资源
    最近更新 更多