2013-02-27 13 views
5

Con riferimento a tomcat and extracted files Ho configurato server.xml su auto deploy : true. Il nome del mio file di guerra è ROOT.war perché non desidero/sottodirlo dopo il sito.com.come far esplodere tomcat i file di guerra

Ma non vedo i file .css .js .java o .class in/webappts/ROOT o in qualsiasi posto. (Li ho nel ROOT.war e il sito sta funzionando benissimo con loro riflettente)

vedo solo .class e .java in

/var/cache/tomcat7/Catalina/localhost/_/org/apache/jsp/ 

/var/cache/tomcat7/Catalina/localhost/_/WEB-INF/classes/ 

come configurare Tomcat per esplodere il file .war?

Aggiornamento I

ho Host name="localhost" appBase="/home/ubuntu/www" unpackWARs="true" autoDeploy="true" e io ancora non vedo il disimballaggio. Il mio ROOT.war è in/home/ubuntu/www

Aggiornamento II

Un problema che vedo è che:

Feb 27, 2013 6:29:02 PM org.apache.catalina.startup.HostConfig deployWAR 
INFO: Deploying web application archive /home/ubuntu/www/ROOT.war 
Feb 27, 2013 6:29:02 PM org.apache.catalina.startup.ContextConfig init 
SEVERE: Exception fixing docBase for context [] 
java.io.IOException: Unable to create the directory [/home/ubuntu/www/ROOT] 
     at org.apache.catalina.startup.ExpandWar.expand(ExpandWar.java:100) 
     at org.apache.catalina.startup.ContextConfig.fixDocBase(ContextConfig.java:720) 
     at org.apache.catalina.startup.ContextConfig.init(ContextConfig.java:843) 

Se i manualmente make ROOT in/home/ubuntu/www/con chmod 777. dà errore (non esiste)

+1

I file .css e .js sono effettivamente nel file WAR? (i file .java che non dovresti vedere lì ...) – ppeterka

+0

@ppeterka si sono – kevin

+0

Scusa se questo sembra sciocco, ma il server è in esecuzione? Ho notato con il nostro setup se si posiziona il file war nella directory e si avvia il server che si espande (potrei trovarmi fuori strada qui). – onaclov2000

risposta

10

La cartella/home/ubuntu/www deve essere scrivibile dal processo di Tomcat. Il proprietario e il gruppo devono essere tomcat6/tomcat7 (a seconda del TC utilizzato). Come questo:

drwxrwxr-x 4 tomcat7 tomcat7 4096 Feb 27 14:08 webapps 

non dovreste chmod 777 la cartella, questo è un rischio per la sicurezza, come si ipotizzato correttamente. 'chown tomcat7: tomcat7' dovrebbe funzionare.

+0

Fantastico! Questo ha risolto il mio problema. Una nota, sto usando Tomcat 7 e dovevo usare: sudo chown tomcat: tomcat/var/lib/tomcat7/webapps / – TrippinBilly

1

È necessario assicurarsi che sia impostato unpackWARs==true.

Impostare su true se si desidera che le applicazioni web che vengono inseriti nella directory AppBase come file di archivio di applicazioni web (WAR) di essere estratti in una corrispondente struttura di directory del disco, false per eseguire tali applicazioni web direttamente dal un file WAR. I file WAR si trovano a fuori dall'app dell'host. La base non verrà espansa.

Fonte: http://tomcat.apache.org/tomcat-6.0-doc/config/host.html#Standard_Implementation

+0

Vedo il contrario, vedere l'aggiornamento per favore – kevin

+0

Stor vedi aggiornamento 2 per favore – kevin

+0

più +1 anche per la risposta valida. – kevin

Problemi correlati