我正在IDE Eclipse Indigo(最新版本)上使用JSF 2.0开发一个Web应用程序。
但是在项目 - >属性 - > Project Facets ,选项 JavaServer Faces 在版本1.2上配置,当我尝试将版本更改为2.0时,出现错误消息
无法将项目方面的JavaServer Faces版本更改为2.0。
奇怪的是,我项目中的JSF库都是2.0版本。
我认为这是导致我的网页无法显示简单的xhtml标记的问题,例如<h:outputLabel>
和<h:inputText>
。
我正在使用的JSF库是在Mojarra项目2.0.6上获得的
希望有人可以帮助我 提前致谢
答案 0 :(得分:10)
这是一个Eclipse的怪癖。另见Eclipse bug 201792,它从未被修复过。
更改JSF Facet版本的唯一方法是编辑/.settings/org.eclipse.wst.common.project.facet.core.xml
文件的以下行
<installed facet="jst.jsf" version="1.2"/>
到
<installed facet="jst.jsf" version="2.0"/>
除此之外,你也可以完全忽略它。无论如何,改变那个方面的版本确实对你没有任何新的魔力。最终的WAR构建仍然包含JSF 2.0库,如果您重新声明了<faces-config>
/WEB-INF/faces-config.xml
文件的根声明以符合JSF 2.0,那么应该没有问题。如果你仍然遇到使用Facelets(XHTML文件,就像你自己说的那样)的问题,那么你应该在这里提出一个新的更具体的问题。