2013-03-08 14 views
5

chcę wdrożyć mojej aplikacji na serwerze, a następnie mogę znaleźć aplikację tak:apache-tomcat 7.0 nie rozpakowuje się .war?

http://10.10.10.10/index.jsp 

ale nie

http://10.10.10.10/bar/index.jsp 

więc to jest mój konfiguracji hosta w server.xml:

<Host name="localhost" appBase="webapps" 
      unpackWARs="true" autoDeploy="true"> 
     <Context docBase="/home/foo/bar.war" reloadable="false" path=""/> 
    </Host> 

Ale po tym, jak uruchomić Tomcat

sh $ CATALINA_HOME/bin/startup.sh

znalazłem Tomcat nie rozpakować plik WAR w $ CATALINA_HOME/webapps. następnie próbuję usunąć wszystkie pliki w $ CATALINA_HOME/webapps/ROOT, ale to nie ma znaczenia. , więc czy ktoś wcześniej znalazł ten problem? i jak rozwiązać probelm?

+1

Może powinieneś ustawić wartość unpackWARs na true. –

+1

Zobacz http://stackoverflow.com/questions/7276989/howto-set-the-context-path-of-a-web-application-in-tomcat-7-0 – DominikM

+0

@JoachimRohde Próbowałem, problem istnieje też – MouJian

Odpowiedz

12

Tomcat 7 nie rozpakowuje plików WAR spoza hosta appBase hosta do appBase.

Tomcat 7 uruchomi aplikację z WAR.

+0

Czy wiesz dlaczego? –

+2

Wg projektu. Rozpakowywanie WAR z zewnątrz appBase otwiera wszelkiego rodzaju trudne przypadki krawędzi. Żaden przedsiębiorca nie odczuwał ochoty na drapanie tego konkretnego świądu, więc ograniczenie pozostaje. –

+0

Ale czy tomcat rozpakuje go w dowolnym miejscu? tmp może? – Bostone