2012-04-09 3 views
23

Chcę zmienić kontekstowy katalog główny z "/ war_name" (domyślnie) na "/".Zmiana kontekstowego katalogu głównego dla aplikacji internetowej pod JBoss As 7

W ten sposób utworzyłem plik jboss-web.xml, który wysłałem w katalogu WEB-INF.

Zawartość tego pliku jest:

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

Niestety, powoduje to następujący błąd podczas wdrażania War:

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) 

Jednak kiedy kładę jakąś nazwę katalogu jak:/RoomManagement, I don nie mam tego problemu. Ale jeśli użyję tego, nie będę mógł uzyskać dostępu do stron JSP, które nie znajdują się w/RoomManagement.

Masz pomysł na dobrze skonfigurowany kontekstowy katalog główny na "/"?

Odpowiedz

59

Wygląda na to, że istnieje inna aplikacja działająca w głównym kontekście "/".

Być może będziesz musiał usunąć inną aplikację lub przenieść ją do innego kontekstu, zanim będzie można przypisać aplikację do kontekstu głównego.

Jeśli aplikacja jest sprzeczne JBoss AppServer korzeń się, że można wyłączyć za pomocą następującego (enable-welcome-root = "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

Dzięki :) To rozwiązuje mój problem :) – Mik378

+0

Wspaniały! Cieszę się, że to się udało. – uaarkoti

+2

Plik, w którym znajduje się ten plik XML (jeśli działa w domyślnym trybie autonomicznym) znajduje się w katalogu% JBOSS_HOME%/configuration/standalone.xml. – GreenieMeanie