2012-11-06 108 views

回答

2

Nightsorrow提供的解決方案的一部分,您還可以使用WEB-INF/jboss-web.xml文件的上下文根標記來定義Web應用程序的上下文根。因此將其定義爲'/',您可以保留原始文件名。通過這種方式,您可以覆蓋JBoss的默認行爲,即將Web應用程序的上下文根定義爲應用程序的文件名(除非應用程序名稱爲ROOT.war,其默認上下文爲「/」)。

所以的jboss-web.xml文件看起來像類似於:

<jboss-web> 
    ... other tags ... 
    <context-root>/</context-root> 
    ... other tags ... 
</jboss-web> 

注意,不能有兩個應用程序具有相同的上下文根,所以首先你必須刪除根目錄。通過本地主機/ oldRoot <context-root>/oldRoot</context-root>,這將使舊ROOT.war應用可用的:戰爭,或者改變按照相同的程序其上下文根:

  • 添加上下文根標籤到JBoss-web.xml中(例如)或
  • 只是更改其文件名。

如果您想在內部部署帶有Web模塊(war)的EAR文件(而不是純粹的war文件),則必須使用EAR的META-INF/application.xml。這樣定義web模塊:

<application> 
     ... other tags and other modules (ejb, web ...) ... 
    <module> 
     <web> 
      <web-uri>nameOfYourWarFile.war</web-uri> 
      <context-root>/</context-root> 
     </web> 
    </module> 
     ... other tags and other modules (ejb, web ...) ... 
</application> 
+0

我現在試了它的默認頁面不見了,但它給出了一個404錯誤。 我想部署一個EAR文件 – Shurmajee

+0

好的!我以爲你只是想部署一個戰爭文件。如果您有ear文件,則可以在文件META-INF/application.xml中更改其上下文根,定義web模塊: warFileName.war/ ... – Toni

1

您必須在名爲「ROOT.war」的文件中部署您的應用程序。您還必須刪除部署目錄中的現有ROOT.war。

-2

我正在使用eap6。這是我第一次使用jboss。我沒有看到我有$ JBOSS_HOME/server。我看到$ JBOSS_HOME/domain/server。我搜索了$ JBOSS_HOME下的所有文件。我找不到任何WEB-INF和jboss-web.xml

+1

這是一個問題,一個答案,一個內心思想? – webuster

相關問題