Ocultar /cocoon de la URL
Podríamos querer eliminar el /cocoon que aparece en las URLs de nuestra aplicación Cocoon. Es decir, en lugar de teclear la URL:
http://mycompany:8080/cocoon/myapp
queremos la URL:
http:/mycompany:8080/myapp
para hacer que cocoon envíe una página HTML al navegador.
Configurar Tomcat
En pocas palabras, necesitamos configurar un contexto por defecto, donde suceda que Cocoon sea la aplicación web por defecto que se dispare. Vamos allá:
Algunas consideracioens sobre los atributos de Context:
- Definiendo un <Context> con el path="" hemos creado un Contexto por defecto. Ahora Tomcat dirigirá todas sus peticiones hacia Cocoon, que puede no estar asociado explícitamente con otra aplicación web.
- Seleccionando docBase con un path absoluto hemos dirigido a Tomcat para que monte la aplicación web desde ese path. También podríamos haber utilizado un path relativo, que se resolvería en relación a $cocoon_root/webapps pero cuidado...
Nota Importante:
Si desplegamos Cocoon en el directorio de aplicaciones web por defecto Y configuramos un Contexto dentro del fichero server.xml para la misma aplicación, la montaremos dos veces: una mediante el contexto por defecto y otra mediante el montaje automático de la carpeta webapps.
Esto es cierto incluso si docBase apunta a $tomcat_root/webapps/cocoon!!!
Y probablemetne NO será lo que queremos; debemos desplegar Cocoon en cualquier otro lugar para evitar el auto-montaje.
|
¿Qué hemos conseguido?
La siguiente URL, por ejemplo:
http:/mycompany:8080/myapp
ahora apunta al mismo lugar que la URL utilizada formalmente:
http://mycompany:8080/cocoon/myapp