2010-01-25 82 views
44

如何使用facelets激活eclipse(3.5,WTP)內容幫助.xhtml頁面獲取JSF(1.2)標籤? 它適用於.jsp文件,但不適用於xhtml。帶facelets(jsf)和xhtml的Eclipse自動完成(內容輔助)

我google了很多,而且在很多地方(包括MyFaces的維基),據說 -

「的Eclipse無法與XHTML和Facelets工作,」因爲這部作品與.jsp文件,我認爲有可能是一些機制可以激活該內容。

我開始研究一個已經有很大代碼的項目,所以更改擴展不是一個選項。額外的插件也是不可取的,但如果沒有其他的工作可以接受。

(我問這個問題來驗證,如果有人還沒有找到解決辦法機智這個問題 - 否則,我知道這是不可能的)

+0

是否還有其他解決方法可以解決這個問題,因爲這兩個解決方案對於我來說都不適合使用.xhtml和豐富的面孔。 – f1wade 2014-05-12 09:44:28

回答

56

問這個問題後找到了解決辦法很快(一小時後,我開始試圖解決它):

Window > Preferences > General > Content Types > Text > JSP > Add (xhtml)

使得文件被作爲JSP的人對待。因此,當使用JSP編輯器打開它們時,任何標記庫的自動完成都可以使用,其定義格式爲.tld(例如,<h:<f)。 Facelets和facelets-only標籤仍然不起作用。他們的.tld等價物應該添加到項目中的某個地方。 Facelet的tld可以在here找到。

另一種更復雜的解決方案是描述here

+1

呃.. downvote?這對我的perfetclty很好。解釋爲什麼downvote。 – Bozho 2010-01-30 00:30:39

+0

幹得好(+1)。我不明白爲什麼有人給你低調。 – 2010-02-21 03:27:05

+0

也許他很生氣,你回答了你自己的問題;-) 順便說一下,它也適用於我! (+1) – 2010-08-04 14:13:07

1

您是否想過MyEclipse?它不是免費的,但它是一個非常好的工具。當我使用JSF開發時,它非常有幫助。

+1

我沒有考慮它有兩個原因:1.它不是免費的2.我最後一次評估它是如此錯誤,我不得不在一段時間內重新安裝Eclipse。確實很久以前,但仍然很好.. – Bozho 2010-01-25 23:51:04

7

使用JBoss Tools,這是我用於我的JSF + Facelets項目。如果你需要使用這項技術,這是最好的。

http://www.jboss.org/tools

我建議使用最新的發行候選版本是CR1,因爲它是一個與Eclipse 3.5兼容,最終版本應該很快,但CR1是堅如磐石。

http://in.relation.to/Bloggers/JBossTools31CR1Released

+1

好。但它確實與.xhtml擴展一起工作嗎? 無論如何,我的首選解決方案是非附加插件 – Bozho 2010-01-26 00:33:13

+0

是的,它可以與xhtml開箱即用,以及更多有用的功能,如果您進行JSF開發,包括任何標籤庫,甚至自定義facelets標籤。 – kpolice 2010-01-26 04:44:55

+0

因爲我使用SpringSource工具套件,如果我在相同的安裝中安裝JBoss和SpringSource的工具,感覺很奇怪=))我當然希望它能工作。 – 2010-02-18 03:16:13

48

的Eclipse靛藍(3.7)加入* .xhtml作爲一個jsp不起作用。

添加項目方面解決問題:

右鍵單擊項目 - >首選項 - >項目構面 - >點擊「的JavaServer Faces」,版本應該最有可能是2.0。

然後它要求圖書館,你可以點擊「禁用...」,因爲很可能你已經有了配置的罐子。我沒有我的圖書館,所以我忽略了那部分。

截圖: enter image description here

+4

Bozho的解決方案一開始並不適用於我,但是您的解決方案是在我的項目中添加一個JSF構面。 Merci Mihail – kiwifrog 2012-05-30 15:28:48

+1

這也適用於Eclipse Kepler(4.3) – Terel 2013-07-10 13:38:54

+0

這對我不起作用,我仍然無法在.xhtml文件上獲得代碼輔助。 – f1wade 2014-05-12 09:35:59

0

建議:在eclipse 靛藍(經典),並與行家工作項目

,你可以看到波紋管的圖片,找不到Project Facets選擇該@mist建議(因爲我沒有安裝任何插件,但我猜)m2e

enter image description here

所以,我這樣做是爲了解決這個問題:

Window >> Preference >> General >> Content Types >> XML >> Add file association (*.xhtml)

這項工作不是那麼好(內容停工)。

+1

只需添加JSF項目構面 – BalusC 2013-04-23 11:42:04

+0

@BalusC err ..這不是一個好的答案,但我找不到@mist建議的'project facets'選項 – Teifi 2013-04-24 02:15:39

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中盧娜和primefaces 5

1

如果沒有工作,你必須去首選項 - >常規 - >鍵 ,然後搜索「內容輔助「如果只有一個」內容協助「 」當「編輯Java源」存在時複製此命令。並設置綁定到ctrl + 空間和「編輯JSP源」。

1

如果您已經安裝了JBoss Tools並仍然存在此問題,請卸載JBoss工具。重新開啓eclipse。確保你的安裝組件列表中沒有任何JBoss工具。

現在回到eclipse市場。

剛從JBoss工具集中安裝JBoss JSF,JBoss Richfaces和JBoss Visual Page Editor。不要下載超過30多種工具的整個軟件包。這是一個臃腫的軟件包,會減慢日食和不必要的膨脹你的eclipse實例。

啓用帶有最新JSF實現庫的JSF構面。我建議你直接從官方的JSF網站下載這個jar。

關閉日食。

打開eclipse並創建一個新的工作區。

將項目導回新工作區。

這對我有效!

2

我安裝了JBoss Tools併爲我的項目配置了JavaServer Faces構面(在Eclipse Mars中),但仍然沒有從我的.xhtml文件中獲得任何內容幫助。這裏沒有提到的一個解決辦法是選擇加入JSF功能

Add JSF Capabilities

只需右鍵單擊該項目,並選擇配置 - >添加JSF功能

它看起來像上面的圖片,但它會說添加JSF功能而不是刪除JSF功能。在上圖中,我已經添加了JSF功能。

+0

你在什麼地方刪除JSF功能位於'? – ACV 2016-03-28 20:15:26

+0

@ACV也許答案有點不清楚。在我的情況下,我已經添加了這些功能,這就是爲什麼圖片顯示_Remove JSF Capabilities_。如果我沒有這樣做,它會說_Add JSF Capabilities_。感謝您的評論。 – Magnilex 2016-03-29 15:36:08

+0

謝謝。我不能解決問題,即使我有jboss工具:( – ACV 2016-03-29 19:23:51

1

我已經爲JSF編碼目的安裝了JBoss工具。但是在* .XHTML中它沒有顯示ManagedBean的內容幫助,所以我做了以下適用於我的步驟。

對於我的項目這一步工作。

1)項目上點擊右鍵 - >配置 - >添加JSF功能.. Step-by-step procedure (Vailaaa !!!解決問題).. 轉到XHTML文件,並試圖代碼#{平方公尺anagedBeans。 HelloJSF()} 其中(^)這是您需要的「Ctrl +空格」內容輔助工具的sysmbol。 here

+0

在我的eclipse(luna)中沒有添加JSF功能的選項,而是在'project properties'>'Project Facets'中,我啓用了* JavaServer Faces * at版本'2.2',但在'xhtml'文件中仍然沒有內容 – 2016-05-28 16:44:27