instalar - levantar tomcat
Implementar la aplicaciĆ³n en el host personalizado de Tomcat (1)
Pude replicar tu problema.
Hay dos soluciones que puedo sugerir después de jugar con combinaciones de appBase
y docBase
. Parece que los dos no funcionan juntos.
Opción 1 - eliminar appBase
Elimine la appBase
de server.xml
y especifique la ruta completa a la aplicación web en docBase
en $CATALINA_HOME/conf/Catalina/java.dev/siloc.xml
Supongo que su valor será /home/krasilich/java/siloc/web/siloc
.
Nota: especificar solo hasta la carpeta principal /home/krasilich/java/siloc/web/
le mostrará una lista de directorios de la carpeta principal
Opción 2 - Eliminar docBase
En $CATALINA_HOME/conf/Catalina/java.dev/siloc.xml
elimine docBase
y guarde solo <Context/>
Tomcat infiere el siloc
del nombre de la siloc
web desde $CATALINA_HOME/conf/Catalina/java.dev/siloc.xml
y busca la aplicación web denominada siloc
en la aplicación Base.
Esto permite que java.dev:8080/siloc/ funcione siempre que también cambie el appBase
en server.xml
a la carpeta principal de su siloc
.
En respuesta a por qué el manager
funciona, la misma razón: no hay docBase en manager.xml
Estoy probando otras combinaciones de docBase pero cualquier valor que doy arroja el
ADVERTENCIA: Se ha especificado un docBase ... dentro de la aplicación de la base de host, y será ignorado
Entonces mi conclusión es eliminar el docBase. Esta no es una buena idea, ya que la ruta completa a la carpeta primaria se codifica en server.xml.
Tengo algunos problemas para implementar mi aplicación.
Entorno: Ubuntu 10.04, Tomcat 7.02 (Instalar desde el archivo desde el sitio de tomcat, no desde los repositorios), el servidor se ejecuta y se detiene manualmente, sin utilizar ningún IDE.
Por primera vez, he creado un host en $CATALINA_HOME/conf/server.xml
:
<Host name="java.dev"
appBase="/home/krasilich/java/"
autoDeploy="true" >
<Alias>www.java.dev</Alias>
</Host>
Luego crea un contexto en $CATALINA_HOME/conf/Catalina/java.dev/siloc.xml
:
<Context docBase="siloc/web/" />
Y obtuve el error
Se ha especificado un docBase / home / krasilich / java / siloc / web / dentro del host appBase, que se ignorará
Pero, si copio manager.xml en $CATALINA_HOME/conf/Catalina/java.dev/
puedo ejecutar la aplicación de administrador. Si despliego mi aplicación a través del administrador, dice que todo va bien, pero todavía veo el 404 en java.dev:8080/siloc/
Eso es todo sobre el host personalizado.
Intenté implementar la aplicación a través de manager en localhost también y funciona, puedo ver mi "Hello Word" en localhost: 8080 / siloc /
Pero, si cambio el texto en mi index.jsp, no se verá afectado en la interfaz. El botón "Volver a desplegar" no es de ayuda para mí.
Como mencioné, el administrador solo copia los archivos de la aplicación al directorio de webapps y no realiza ningún cambio en los archivos de configuración.
Todo lo que necesito es que pueda implementar la aplicación en cualquier directorio de mi sistema de archivos (en realidad será /home/krasilich/java/
).
Y sería genial si pudiera hacer esto en un host personalizado como java.dev. Necesito la respuesta, por qué el contexto en $CATALINA_HOME/conf/Catalina/java.dev/siloc.xml
no funciona para mí, y qué Lo hago para que sea consistente?
Gracias.