applicazione Deploy su host personalizzato di Tomcat
Domanda
Ho avuto alcuni problemi di distribuire la mia applicazione.
Ambiente:. Ubuntu 10.04, Tomcat 7.02 (Installa da archivio dal sito Tomcat, non dal repository), il server viene eseguito e fermato manualy, non utilizzando qualsiasi IDE
Per la prima ho creato ospite in $CATALINA_HOME/conf/server.xml
:
<Host name="java.dev"
appBase="/home/krasilich/java/"
autoDeploy="true" >
<Alias>www.java.dev</Alias>
</Host>
Quindi creare un contesto in $CATALINA_HOME/conf/Catalina/java.dev/siloc.xml
:
<Context docBase="siloc/web/" />
E ottenuto l'errore
A docBase / home / krasilich / java / siloc / web / all'interno dell'ospite AppBase è stata specificata, e verrà ignorato
Ma, se copio manager.xml a $CATALINA_HOME/conf/Catalina/java.dev/
posso correre app manager.
Se schiero la mia domanda attraverso il responsabile - si dice che tutto sta andando bene, ma ho ancora vedere la 404 sulla java.dev:8080/siloc /
Questo è tutto su host personalizzato.
Ho cercato di applicazione implementare attraverso il responsabile su localhost anche e funziona, posso vedere il mio "Ciao Parola" su localhost: 8080 / siloc /
Ma, se cambio il testo nel mio index.jsp che sarà non è influenzato in frontend. Il pulsante "Ridistribuire" non è di aiuto per me.
Come ho detto direttore di file di applicazioni nella directory webapps basta copiare, e non apportato cambiamenti nei file di configurazione.
Tutto quello che ho bisogno che posso distribuire applicazioni in qualsiasi directory nel mio file system (in realtà sarà /home/krasilich/java/
).
E sarebbe bello se posso fare questo su host personalizzato come java.dev
Ho bisogno di una risposta, perché il contesto in $CATALINA_HOME/conf/Catalina/java.dev/siloc.xml
non funziona per me, e che cosa devo fare per renderlo coerente?
Grazie.
Soluzione
Sono stato in grado di replicare il problema.
Ci sono 2 Soluzione posso suggerire dopo armeggiare intorno con combinazioni di appBase
e docBase
. Sembra che il due non funzionano insieme.
Opzione 1 - Rimuovere AppBase
Rimuovi il appBase
da server.xml
e specificare il percorso completo del web app in docBase
nel $CATALINA_HOME/conf/Catalina/java.dev/siloc.xml
Si assume che il valore sarà /home/krasilich/java/siloc/web/siloc
.
Nota: specificando solo fino al /home/krasilich/java/siloc/web/
cartella principale vi mostrerà un elenco di directory del genitore della cartella
Opzione 2 - Rimuovere docBase
In $CATALINA_HOME/conf/Catalina/java.dev/siloc.xml
rimuovere il docBase
e tenere solo <Context/>
Tomcat deduce il nome webapp siloc
dal $CATALINA_HOME/conf/Catalina/java.dev/siloc.xml
e sembra per la webapp chiamato siloc
nel AppBase.
In questo modo java.dev:8080/siloc/ al lavoro fornito si cambia anche il appBase
in server.xml
alla cartella principale del vostro siloc
webapp.
In risposta sul motivo per cui le opere manager
, stessa ragione - non c'è docBase nel manager.xml
sto cercando altre combinazioni di docBase ma qualsiasi valore do getta la
ATTENZIONE: A docBase ... all'interno dell'ospite AppBase è stata specificata, e verrà ignorato
Quindi, la mia conclusione è quello di rimuovere il docBase. Questa non è una buona idea -. In quanto il percorso completo cartella principale viene poi codificato in server.xml