5

我正在 IDE Eclipse Indigo(最新版本)上使用 JSF 2.0 开发 Web 应用程序。

但是在Project ->Properties -> 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 上获得的

希望有人可以帮助我提前谢谢

4

1 回答 1

10

这是 Eclipse 的一个怪癖。另请参阅从未修复的Eclipse 错误 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 文件,正如您自己所说)的问题,那么您应该在这里提出一个新的更具体的问题。

于 2011-11-17T17:57:31.373 回答