2012-07-19 68 views
1

我有我認爲可能是一個奇怪的問題要問。將JavaScript框架與Java Web框架集成

最近我在玩一些java web框架(帶有primefaces的jsf),我注意到它在處理表單數據或者當你和jsf組件一起玩時非常好。我也使用Grails做了一個項目,並且它對錶單數據很有用。

但是,當你想要做一些需要一點點偏差的時刻;然後我發現自己做了奇怪的事情(例如,使用primefaces和帶有grails的單頁webapp表單的強大值的標籤雲)。

這導致了一些非常凌亂的html + javascript代碼,用於我的grails事物(這歸咎於我對javascript的缺乏經驗)。這是因爲我使用表達式語言(在這種情況下是grails)來填充一些javascript。最糟糕的部分是,我有一堆自定義JavaScript代碼與我的服務器頁面內聯(我可以重構一點點,但我認爲在單個頁面內仍然會有很多javascript調用)。

所以,現在的問題(S):)

  • [主要問題]有沒有演示瞭如何設計,或者至少實現與服務器頁面(GSP,XHTML等)維護JavaScript的任何資源?

原因是我發現有一些整齊的javascript框架,但如果考慮到服務器端框架的表達式語言,那麼在服務器頁面中使用它們似乎有點不自然?除非這種類型的東西是正常的:)?

  • 是否有適合使用java的單頁webapps的框架?

我現在的答案是GWT,Vaadin(基於GWT),也許JavaFX有資格。也許ZK,Flex和(Grails/Roo + Flex/GWT)也符合資格?

  • java web框架對於表示層仍然有用嗎?

我當前的答案是,他們可能是當你處理門戶類型的webapps或Web 1.0應用程序缺乏一個更好的詞。另一種情況是,當你使用大量基於角色的安全性時,他們可能會出現這種情況,並且你想根據角色過濾掉所有事情,但即使這樣也有反駁的論點。 我對此的其他答案是,使用java服務器提供您的Web服務,然後依靠其他方式來執行前端可能會更好?

+0

http://en.wikipedia.org/wiki/Unobtrusive_JavaScript – Quentin 2012-07-19 08:45:36

回答

1

這可能是OP,但對於單頁面應用程序,通過JSON(P)/ XML /任何方式從服務器提供數據更容易,然後使用Backbone之類的東西來相應地處理和修改視圖。這樣,服務器就可以使用REST/SOAP/websockets /任何東西,並且瀏覽器應用程序變成一個完整的應用程序。

我還沒有真正做到這一點,所以不要引用我,但我想它應該是有道理的。