2011-03-29 73 views
13

我有Java swing應用程序。我想轉換爲網絡基礎應用程序。什麼是最簡單的方法? 有沒有可用的工具,最好是開源代碼?將Java Swing轉換爲基於Web的應用程序

+3

您的意思是「開源」或「免費」(或兩者兼而有之)?兩者不一樣。 – 2011-03-29 10:36:45

回答

9

AjaxSwing是一個運行時工具,需要一個用於商業用途的服務器許可證。

你可能想嘗試Mia Transformer - 網站的一部分在法國。他們將Swing Java代碼更改爲GWT Java代碼,GWT將其更改爲Javascript,然後如果您希望可以使用Google V8編譯器來加快執行速度。當然,這不是100%。我們將嘗試一個大型項目,看看它是否有效。

提供給我們的其他鏈接是SwingWeb。雖然沒有檢查出來。

會讓你發佈。如果您遇到可行的解決方案,請分享。

+2

從哪裏可以得到'Mia Transformer'?在網站上,我無法理解如何查找,下載和使用它.. – 2013-01-28 06:17:23

5

其實是有一個神奇的工具,你可以使用桌面應用程序轉換成Web應用程序:AjaxSwing

但是請注意,它只能轉換非常簡單擺動的應用程序。如果您使用複雜的渲染器,則可能無法獲得正確的結果。也不是免費的。

3

你可以想想Java Web Start的它不轉換應用程序,但你可以使用你的應用基於Web ...

+0

有關更多詳細信息,請參閱[Java Web Start標記信息](http://stackoverflow.com/tags/java-web-start/info)。 – 2011-03-29 10:35:10

0

由於維諾德提到的Java Web Start是最簡單的方法。另一種選擇是將應用程序轉換爲可從網頁運行的Applet。

10

有一個新的開源項目webswing.org。它是一個Web服務器,您可以在其中部署您的swing應用程序該應用程序通過websockets呈現給html畫布,因此您可以在桌面上獲得完全相同的外觀和感覺。

+0

webswing真的給我留下了深刻的印象,但文檔看起來已經過時了(你指的是一個不存在的start.sh,而不是webswing.sh)能夠開火。自2013年第一次啓動以來,該項目是否已於2016年停止? – 2016-11-10 21:10:10

+0

不,您正在討論的更新目前是最近的,他們可能不會立即更新文檔 – Sharcoux 2017-03-08 08:29:17

5

對於Java程序員the Vaadin framework與Java Swing非常相似。在架構上,Vaadin和Swing應用程序當然是完全不同的(web vs desktop),但是因爲Vaadin應用程序中的UI邏輯運行在服務器端(在JVM中),所有來自Swing的Java類和應用程序邏輯應用程序通常是完全可重用的。您可以在hello-world sample中看到事件驅動的編程模型與Swing的相似之處。此外,Vaadin有效地隱藏了來自Java應用程序員的所有Web特定細節(html,css,rpc,...),使其成爲一種熟悉而有效的工具,可將舊的Swing應用程序轉換爲現代的HTML5 Web應用程序。

相關問題