2008-10-07 101 views
3

是否可以在另一個內部包含/嵌入一個Java EE應用程序(war文件)?Java EE war文件

我有一個應用程序是一個門戶應用程序,我想讓其他用戶在那裏添加應用程序。爲了做到這一點,我需要一些方法來訪問我的應用程序。

這可能嗎?

回答

4

您不能將WAR放入其他WAR中。您需要一個EAR文件來包含WAR,EJB等。實現WAR間通信的一種方法是將該邏輯直接打包到EAR中。這完全取決於你想要做什麼。

+0

說明一下,EAR是其他JEE可部署軟件包(如WAR,EJB JAR等)的容器。 – skaffman 2008-10-07 14:03:02

1

正如其他人指出的那樣,將WARs嵌入到WAR中不是一種選擇。不過,我可能會爲您解決一個問題。

我熟悉的大多數Web容器都具有「測試部署/自動部署」模式/功能,如果WAR被複制到正確的目錄中,他們將自動部署應用程序。

您的門戶應用程序當然可以允許上傳WAR,並且它可以將上傳的字節存儲在給定文件名下的給定目錄中。您的Web容器可以完成剩下的工作。然後,您可以從您的門戶鏈接到新的應用程序,或任何其他。所有這些都相對容易。

但是,請注意,如果有任何安全問題,這是一個可怕的想法。你基本上允許你的用戶在你的服務器上執行任意代碼。除非你完全相信所有的潛在用戶都是非惡意的,並且完全勝任(認爲無限循環),否則你在這裏要求很大的麻煩。

+0

我對這件事感到不安。 (至少你確實指出了你的安全問題。) – 2008-10-07 16:18:16