4

我正在使用 JSTL 构建一个动态表,并希望利用 c:out 标签来帮助构建一些表达式,但我无法在其他 JSTL 核心标签中找到该标签。

我正在使用以下命名空间:

xmlns:c="http://java.sun.com/jsp/jstl/core" 

并确保我的 web.xml 文件设置为使用此处找到的 2.5 规范 https://stackoverflow.com/tags/jstl/info

但仍然只能找到 catch、choose、forEach、if、else、set 和 when。

此外,我也尝试导入 JSTL 1.2.1.jar 库,但没有成功。

那么,我应该在 JSF2 中使用 c:out 标签吗?如果是这样,我错过了哪些步骤?

问候,

麦克风

4

1 回答 1

11

JSF2 Facelets<c:out>中确实不可用。无论如何,您在 JSF2 Facelets 中都不需要它。只需使用 JSF 等效项,<h:outputText>

<h:outputText value="#{bean.text}" />

甚至更好,只需将 EL 放在模板文本中,

#{bean.text}

如果这是您唯一关心的问题,它将已经被隐式 XML 转义(并且在旧 JSP2 时代实际上是使用的唯一原因<c:out>;在 JSP1 中,为了在模板文本中将 bean 属性显示为 EL,该标记是强制​​性的。 JSP1 中支持)。与那些标准的<c:out>JSF2 Facelets 方式相比,它没有提供额外的优势,这就是为什么从 Facelets 的 JSTL 子集中删除它的原因。

也可以看看:

于 2013-04-02T15:54:31.523 回答