当嵌入式码头中的URI定义为/ jstl / core_rt而不是/ jsp / jstl / core时,为什么JSTL起作用?

问题描述 投票:2回答:1

我似乎无法在嵌入式码头项目中正常运行我的JSTL库。

我的taglib行似乎让我感到悲伤,当我使用不同的URI时,一切都会改变。这是我要使用的行:

<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

我首先尝试使用普通的URI http://java.sun.com/jsp/jstl/core,但是会引发错误:

org.apache.jasper.JasperException:/bad.jsp(1,61)PWC6188:绝对uri:http://java.sun.com/jsp/jstl/core无法在web.xml或与此应用程序一起部署的jar文件中解析]

但是,当我将URI更改为http://java.sun.com/jstl/core_rt时。有效!

我注意到的另一件事,如果我有旧的JSTL 1.0 url(http://java.sun.com/jstl/core),则会出现以下错误:

org.apache.jasper.JasperException:/bad-el.jsp(4,0)PWC6236:根据标签文件中的TLD或属性指令,属性值不接受任何表达式

现在我注意到了另一个令人困惑的事情,这一切都可以在IntelliJ中使用!这使我相信存在类路径问题,但是当我将它们嵌入战争中时,这些库应该完全相同。我想我缺少什么。

所以,我的问题归结为什么,我需要什么库,或者需要什么配置才能使其正常工作?

这是我尝试遵循的当前问题,但未能解决我的问题:

我似乎无法使我的JSTL库在我的嵌入式码头项目中正常工作。我的taglib行似乎让我感到悲伤,当我使用不同的URI时,一切都会改变。这是我要写的那一行...

jetty jstl embedded-jetty
1个回答
0
投票

如果您想让JSTL uri工作,您应该知道jstl是两个文件。

© www.soinside.com 2019 - 2024. All rights reserved.