如何使用facelets激活JSF(1.2)标签的.xhtml页面中的eclipse(3.5,WTP)内容辅助? 它适用于.jsp文件,但不适用于xhtml。
我谷歌很多,并且在很多地方(包括MyFaces wiki)都有人说 - “Eclipse无法使用xhtml和facelets”
由于这适用于.jsp文件,我假设可能有一些机制可用于激活该内容辅助。
我开始研究一个已经拥有大量代码库的项目,因此无法更改扩展名。其他插件也是不受欢迎的,但如果没有其他工作可以接受的话。
(我问的问题是验证是否有人没有找到这个问题的诙谐解决方法 - 否则我知道这是不可能的)
答案 0 :(得分:63)
在提出问题后(我开始尝试解决问题一小时后)很快找到解决方案:
Window > Preferences > General > Content Types > Text > JSP > Add (xhtml)
将文件视为jsp文件。因此,当使用JSP编辑器打开它们时,任何具有.tld
格式(例如<h:
和<f
)定义的标记库的自动完成都可以正常工作。 Facelets和facelets-only标签仍然无效。他们的.tld
等价物应该添加到项目的某个地方。可以找到Facelet的标记here。
另一个,更复杂的解决方案被描述为here。
答案 1 :(得分:49)
在 Eclipse Indigo(3.7)中添加* .xhtml作为jsp不起作用。
添加项目构面解决了这个问题:
右键点击该项目 - &gt;偏好 - &gt;项目方面 - &gt;单击“JavaServer Faces”,版本最有可能是2.0。
然后它要求一个库,你可以点击“禁用...”,因为很可能你已经配置了jar。我没有我的图书馆,所以我忽略了那部分。
截图:
答案 2 :(得分:7)
使用JBoss Tools,这是我用于JSF + Facelets项目的东西。如果您需要使用这项技术,这是最好的。
我建议使用CR1的最新候选版本,因为它是与Eclipse 3.5兼容的版本,最终版本应尽快推出,但CR1坚如磐石。
答案 3 :(得分:2)
我安装了JBoss Tools并为我的项目配置了JavaServer Faces facet(在Eclipse Mars中),但仍然没有从我的 .xhtml 文件中获得任何内容帮助。此处未提及的解决方案是选择添加JSF功能:
只需右键单击该项目,然后选择配置 - &gt; 添加JSF功能。
它看起来像上图,但它会说添加JSF功能而不是删除JSF功能。在上图中,我已经添加了JSF功能。
答案 4 :(得分:1)
你有没有想过MyEclipse?它不是免费的,但它是一个非常好的工具。当我使用JSF开发时,它帮助了很多。
答案 5 :(得分:1)
检查是否包含primefaces命名空间!所以你的html标签看起来如下:
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:p="http://primefaces.org/ui">
我一直在使用Eclipse Luna和primefaces 5。
答案 6 :(得分:1)
如果没有任何效果,您必须转到偏好设置 - &gt; General-&gt; Keys 然后搜索&#34;内容辅助&#34;如果只有一个内容协助&#34;对于 &#34;当&#34; &#34;编辑Java源代码&#34;存在复制此命令。并将绑定设置为 ctrl + space 以及&#34;编辑JSP源&#34;。
答案 7 :(得分:1)
如果您已经安装了JBoss Tools但仍有此问题,请卸载JBoss工具。重启eclipse。确保您的安装组件列表中没有任何JBoss工具。
现在回到日食市场。
安装:JBoss工具集中的JBoss JSF,JBoss Richfaces和JBoss Visual Page Editor。不要下载超过30多种工具附带的整个软件包。它是一个臃肿的包,会减慢eclipse和不必要的膨胀你的eclipse实例。
使用最新的JSF实现库启用JSF facet。我建议你直接从JSF官方网站下载这个jar。
关闭日食。
打开eclipse并创建一个新工作区。
将项目导回到新工作区。
这对我有用!
答案 8 :(得分:1)
我已经安装了用于JSF编码的JBoss工具。但是在* .XHTML中它没有显示ManagedBean的内容辅助。所以我做了以下为我工作的步骤。
对于我的项目,这个步骤有效。
1)右键点击项目 - &gt;配置 - &gt;添加JSF功能.. Step-by-step procedure (Vailaaa !!!问题解决).. 转到Xhtml文件并尝试编码#{m ^ anagedBeans.HelloJSF()} where(^)这是sysmbol那里你只需要“Ctrl + space”内容辅助就行了。here
答案 9 :(得分:0)
建议:在eclipse Indigo (经典)并使用 maven 项目
如下图所示,无法找到Project Facets
建议的@mist
选项(因为我没有安装任何插件,但我猜是m2e
)。
所以,我这样做是为了解决这个问题:
Window >> Preference >> General >> Content Types >> XML >> Add file association (*.xhtml)
这项工作不太顺利(内容停止)。