Cómo utilizar diferentes META-INF / context.xml Archivos para el desarrollo y entornos de producción

StackOverflow https://stackoverflow.com/questions/694109

  •  22-08-2019
  •  | 
  •  

Pregunta

En Tomcat (y algunos otros contenedores de servlets) puedo almacenar información acerca de mi origen de datos JDBC en META-INF/context.xml. Esto es muy útil.

Sin embargo, la configuración de mi fuente de datos JDBC pueden ser diferentes en mis entornos de desarrollo y producción. Me gustaría saber cómo otras personas hacer frente a estas diferencias de una manera elegante, específicamente cómo puedo configurar un context.xml para mi entorno de desarrollo y uno para mi entorno de producción de la manera más libre de problemas.

¿Fue útil?

Solución

Se pueden crear diferentes archivos para la específica construye. Por ejemplo, cree: development.context.xml production.context.xml

A continuación, puede controlar qué archivo de contexto se utiliza en el archivo build.xml. Básicamente, la configuración de un mensaje para el tipo de construcción que le gustaría utilizar. Cuando se selecciona el desarrollo, se utiliza el archivo de contexto de desarrollo. Cuando se selecciona la producción, se utiliza el archivo de contexto de producción.

Otros consejos

Me gustaría hacer lo mismo que Kevin mencionó. Si está utilizando Maven que usaría "perfiles".

Si desea obtener más información acerca de los perfiles de Maven leer esto: Introducción para construir perfiles

Personalmente no almacenar información de configuración como la de context.xml (tal vez en otro archivo de propiedades o algo así), pero la forma general para algo como esto es tener su paquete de script de construcción diferentes versiones del archivo de configuración en el WAR / EAR / lo que sea. Usted podría tener su escritura de la estructura decidir si desea utilizar el "dev" o archivo "producción" de configuración basada en parámetros que se pasa en, ejecutar diferentes objetivos, etc.

Algo que utilizo a menudo es el href="http://ant.apache.org/manual/using.html#filters" rel="nofollow noreferrer"> tarea

scroll top