2011-10-26 2 views
5

Dans un fichier de printemps: jeTomcat + printemps et variables d'environnement

<bean id="propertyConfigurer" class="org.myapp.MyConfigurator"> 
     <property name="locations"> 
     <list> 
         <value>classpath:configuration-${env}.properties</value> 
     </list> 
    </property> 
</bean> 

la variable $ {env} est défini dans le profil de Maven. Mais quand je cours d'éclipse l'application dans Tomcat 6 (publié) il ne regarde pas dans maven. Alors, comment puis-je définir la variable pour Tomcat?

Merci

Randomize

+0

http://stackoverflow.com/questions/3965446/how-to-read-system -environment-variable-in-spring-applicationcontext –

Répondre

6

variable Ajouter système dans Eclipse: Allez à Exécuter -> Exécuter les configurations -> Tomcat Sélectionnez l'onglet Arguments et ajouter aux arguments VM -Denv=blabla

4

Pour définir une variable dans le tomcat context.xml qui peut être utilisé au printemps ajouter cette ligne au contexte en plein context.xml.

<Parameter name="env" value="ABCDEFG" override="false"/> 
+0

override: \t Définissez cette valeur sur false si vous ne voulez pas de pour le même nom de paramètre, trouvé dans le descripteur de déploiement d'application Web, pour remplacer la valeur spécifiée ici. Par défaut, les remplacements sont autorisés. –

1

solution Tarlog peut résoudre votre problème, mais seulement à l'intérieur éclipse , si vous supprimez la définition de votre serveur d'Eclipse, vous perdez la définition et vous devez l'ajouter à chaque fois que vous modifiez votre IDE ou supprimez la définition du serveur. Il est donc préférable de créer un fichier shell ou bat (comme runServer.sh/.bat) en fonction de votre environnement et d'ajouter ce paramètre à la variable JAVA_OPTS afin que cette variable soit appelée lorsque catalina.sh/.bat est en cours d'exécution (démarrage. sh/.bat appelé script catalina à l'intérieur). Vous pouvez utiliser cette approche dans votre environnement local, test et prod.

Fenêtres: runServer.bat

set JAVA_OPTS="-Dvariable=value" 
tomcat/bin/startup.bat 

Linux: runServer.sh

export JAVA_OPTS="-Dvariable=value" 
tomcat/bin/startup.sh 
Questions connexes