Eclipse中的JSF 2.2 passthrough

时间:2014-10-18 03:25:09

标签: eclipse html5 jsf glassfish jsf-2.2

我正在尝试使用jsf 2.2 passthrough命名空间来传递某些html5属性。

这是我的login.xhtml文件的样子:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://xmlns.jcp.org/jsf/facelets"
xmlns:h="http://xmlns.jcp.org/jsf/html"
xmlns:f="http://xmlns.jcp.org/jsf/core"
xmlns:a="http://xmlns.jcp.org/jsf/passthrough">
<h:head></h:head>
h:body>
<h:form>
    <h:inputText id="name" a:placeholder="name"></h:inputText>
    <h:inputSecret id="password" a:placeholder="password"></h:inputSecret>
</h:form>
</h:body>
</html>

不幸的是,当使用网页编辑器进行编辑时,eclipse在这一行中给我一个错误

xmlns:a="http://xmlns.jcp.org/jsf/passthrough"

错误说:

NLS missing message: CANNOT_FIND_FACELET_TAGLIB in: 
org.eclipse.jst.jsf.core.validation.internal.facelet.messages

我可以忽略该错误,当我将项目部署到glassfish时页面渲染得很好,占位符按预期工作。

但之后错误消失了(即行不再是黄色),每次eclipse尝试验证它所说的文件:

An internal error occurred during: "Processing variables in index.xhtml".
java.lang.AssertionError

我现在花了几个小时的谷歌搜索,发现在jsf 2.2的早期开始存在问题。

我正在使用最新版本的jdk,glassfish和eclipse。我今晚下载并重新安装了所有这些,我仍然无法解决这个问题。我知道我可以忽略它,因为它正在工作,但我想知道我是否犯了错误或者它是否是一个日食错误。

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

尝试使用我上传的JSF前端项目,该项目在JSF2.2下完全配置,它将解决您的问题。它是一个maven项目,您可以使用eclipse或netbeans进行部署,我建议使用NetBeans JSF2.2 frontend