2012-04-09 8 views
23

"/ war_name"(デフォルト)から "/"にコンテキストルートを変更したいと思います。JBoss As 7のWebアプリケーションのコンテキストルートを変更する

私はWEB-INFディレクトリにプッシュしたjboss-web.xmlファイルを作成しました。このファイルの

内容は次のとおりです。残念ながら

<?xml version="1.0" encoding="UTF-8"?> 
<jboss-web> 
    <context-root>/</context-root> 
</jboss-web> 

、これは戦争の展開時に次のエラーが発生します。

ERROR [org.jboss.msc.service.fail] (MSC service thread 1-4) MSC00001: Failed to start service jboss.web.deployment.default-host./: org.jboss.msc.service.StartException in service jboss.web.deployment.default-host./: Failed to start service 
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1780) [jboss-msc-1.0.1.GA.jar:1.0.1.GA] 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) [:1.7.0_01] 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) [:1.7.0_01] 
    at java.lang.Thread.run(Thread.java:722) [:1.7.0_01] 
Caused by: java.lang.IllegalArgumentException: Child container with name already exists 
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:804) 
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:792) 

をしかし、私は次のようにいくつかのディレクトリ名を入れたとき:/ RoomManagement、Iドンこの問題はありません。 これを使用すると、/ RoomManagementにないJSPにアクセスできなくなりました。

context-rootを "/"にうまく設定するアイデアはありますか?

答えて

59

ルートコンテキスト「/」で実行されている別のアプリがあるようです。

アプリをルートコンテキストに割り当てる前に、他のアプリを削除するか、別のコンテキストに移動する必要があります。競合アプリは、JBossアプリケーションサーバールートそのものである場合

すると、次を使用して(有効-歓迎ルート=「false」に)その

<subsystem xmlns="urn:jboss:domain:web:1.0"> 
    <connector name="http" protocol="HTTP/1.1" socket-binding="http" scheme="http"/> 
    <virtual-server name="localhost" enable-welcome-root="false"> 
    <alias name="example.com"/> 
    </virtual-server> 
</subsystem> 
+0

おかげでそれは私の問題を解決します:) :) – Mik378

+0

を無効にすることができますすばらしいです!それがうまくいってうれしい。 – uaarkoti

+2

このXMLがあるファイル(デフォルトのスタンドアロンモードで実行している場合)は%JBOSS_HOME%/ configuration/standalone.xmlにあります。 – GreenieMeanie