2011-03-14 109 views
2

我找不到一個正確的方式將目錄添加到我的應用程序上下文jboss 6. 我將使用此映射的靜態內容。有人能幫我一下嗎?jboss 6虛擬目錄

+0

您是否可以不將該目錄添加到部署檔案文件中,或者您不能讀取檔案文件中的文件? – ThomasRS 2011-03-14 22:14:32

+0

事實上,我有像文件服務器中的照片一樣的靜態內容。這個文件服務器共享被映射到jboss服務器中作爲一個目錄...顯然這個目錄不在我的應用上下文中。所以我得把這個外部目錄映射到應用上下文中......我可以在tomcat 6上做得很好......但是我仍然無法在jboss 6中做同樣的事情。 – user659510 2011-03-14 22:43:21

+0

有關類似的問題,請參閱http://community.jboss.org/message/531424和http://community.jboss.org/message/531424,我試圖解壓縮.war並映射目標目錄(第二秒時間(?))到生成的目錄(Web應用程序)的根目錄或子目錄。 – ThomasRS 2011-03-14 23:06:10

回答

3

有沒有更多的「虛擬目錄」中的JBoss 6.顯然,這出去與JBoss 5.我發現是唯一可用的選項:

  1. 創建一個空白/ WEB-INF /網頁。在你的靜態內容目錄中使用xml(像< web-app/>),並在你的jboss deploy目錄中創建一個帶有.war擴展名的符號鏈接。您也可以將包含靜態內容的目錄複製到您的deploy目錄,但是我發現一個更有用的符號鏈接。
  2. 創建,如果你使用像Spring MVC的3 Web框架,你可以使用「資源」功能,以服務內容爲您提供從配置目錄(討論here
  3. 靜態內容的一個servlet web應用程序(討論here
+0

符號鏈接對我無效。我不得不使用外部部署。 Mybe我的JBoss被配置爲不遵循符號鏈接? – 2012-04-26 21:05:19

0

壞消息是,你只能服務在JBoss應用程序的靜態內容。好消息是,將任何文件夾轉換爲應用程序文件夾非常簡單。

最簡單的解決方案是將所有靜態內容複製到您的server\default\deploy\ROOT.war目錄中。

更復雜的解決方案如下。

  • 複製在你想要把你 靜態內容的位置ROOT.war文件夾。

  • 重命名ROOT.war到任何名字,你喜歡,但它必須與.war, 例如my_static_content.war結束。

  • 將所有靜態內容放入該目錄。

  • 啓用外部部署到包含您的靜態內容文件夾的文件夾。外部與JBoss 6JBoss 5

  • 重啓JBoss

  • 您的內容部署將進入URI http:\\localhost:8080\my_static_content\。您必須指定要提供的文件的確切名稱,因爲不允許列出目錄。

0

this thread幫助我得到靜態內容的外部目錄在JBoss EAP 5.1提供了在不使用環節,而不會移動或重命名文件夾ROOT.war。

請注意,您仍然需要創建一個目錄結構來欺騙jboss來提供您的內容。這並不像在server.xml文件中將<上下文>子元素添加到<主機名=「localhost」>那樣簡單。它看起來像一個黑客,但至少它的作品。