我使用JSF-facelets.jar 1.1.14(我下载了它here)和tomcat 6.0
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.7.0
Created-By: 1.5.0_12-b04 (Sun Microsystems Inc.)
Implementation-Version: 1.1.14
如果我理解的话,JSF-facelets.jar = JSF + JSTL + Facelets(???)
我的问题是当我使用“fmt”功能时。
这段代码......
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:fmt="http://java.sun.com/jstl/fmt">
<h:outputLabel value="hello" />
<fmt:formatDate value="${myBean.date}" pattern="dd/MM/yyyy"/>
</html>
...生成此HTML代码:
<html>
<p>hello</p>
<fmt:formatDate value="${myBean.date}" pattern="dd/MM/yyyy"/>
</html>
为什么“fmt:formatDate”没有更改为HTML代码???
答案 0 :(得分:1)
在JSF中实现这一目标的正确方法是使用转换器。像这样使用<h:outputText>
标记:
<h:outputText value="#{myBean.date}">
<f:convertDateTime pattern="dd/MM/yyyy" />
</h:outputText>
您会发现JSF中并不支持所有JSTL标记。 Facelets确实为核心标记库(forEach
等)提供了有限的支持,但它们可能无法按照您期望的方式工作。本文提供了一个很好的总结:http://drewdev.blogspot.com/2008/03/build-time-vs-render-time.html
答案 1 :(得分:0)
这是一个jstl标签。它不需要翻译。它是从一个jsp编译成一个servlet。
你期望它被“翻译”成什么?