Passe défini par l'utilisateur variable d'environnement tomcat
Je suis à l'aide de l'éclipse de l'application web de codage. Au sein de ce j'ai passé la variable d'environnement comme :
- Projet--> Exécuter en tant qu' --> Configuration d'Exécution. Et sélectionnés onglet Environnement.
- Ajouter de nouveaux variable d'environnement avec le nom
APP_MASTER_PASSWORD
et sa valeur.
Je peux accéder à cette valeur dans le code java que System.getenv("APP_MASTER_PASSWORD")
.
Mais maintenant je veux passer cette variable d'environnement tomcat et d'accès de l'application au lieu de passer thru eclipse.
Alors, comment puis-je passer une variable de tomcat?
J'ai googlé ce sujet. Mais je n'ai aucune solution.
Merci.
Il n'y a pas d'options à l'aide d'un Tomcat serveur virtuel? Ces paramètres d'environnement ne sont pas pratique si vous avez plusieurs copies de l'application en cours d'exécution. Je crois qu'ils sont appelés les "entrées d'environnement"?
OriginalL'auteur Naresh J | 2013-06-10
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser setenv.bat ou .sh pour passer les variables d'environnement pour le Tomcat.
Créer CATALINA_BASE/bin/setenv.bat ou .sh fichier et mettre la ligne suivante, puis démarrez le serveur Tomcat.
Sur Windows:
set APP_MASTER_PASSWORD=foo
Sur les systèmes Unix:
export APP_MASTER_PASSWORD=foo
C'est un peu tard mais... d'Après la documentation de Tomcat , de la création de la setenv.sh devrait fonctionner pour toutes les saveurs de Unix. L'catalina.sh le script va vérifier pour voir si setenv.sh il existe, dans l'affirmative, de l'exécuter pendant le processus de démarrage.
catalina.sh
les contrôles pourCATALINA_BASE/bin/setenv.sh
etCATALINA_HOME/bin/setenv.sh
, et les exécute, si elle est présente.Vous pouvez créer un setenv.sh script, si il n'y est pas déjà
OriginalL'auteur
Vous devez utiliser le Système de propriété au lieu de la variable d'environnement pour ce cas. Modifier votre tomcat scripts pour JAVA_OPTS et ajouter une propriété comme:
-DAPP_MASTER_PASSWORD=foo
et dans votre code, écrire
System.getProperty("APP_MASTER_PASSWORD");
Vous pouvez le faire dans Eclipse ainsi, au lieu de JAVA_OPTS, copier la ligne dans les paramètres de la VM à l'intérieur d'exécuter les configurations.
OriginalL'auteur
Entrées d'environnement spécifiée par
<Environment>
de balisage sont JNDI, accessibles à l'aide de InitialContext.recherche sousjava:/comp/env
. Vous pouvez spécifier les propriétés de l'environnement pour la JNDI en utilisant le paramètre d'environnement de la InitialContext constructeur et fichiers de ressources d'application.System.getEnv()
est sur les variables d'environnement système de tomcat processus lui-même.Définir une variable d'environnement à l'aide de commande bash :
export TOMCAT_OPTS=-Dmy.bar=foo
et démarrer Tomcat :
./startup.sh
Pour récupérer la valeur de la propriété Système
bar
utilisationSystem.getProperty()
.System.getEnv()
peut être utilisée pour récupérer la variable d'environnement c'est à direTOMCAT_OPTS
.OriginalL'auteur
Dans le cas de Windows, si vous ne pouvez pas trouver setenv.chauve-souris, à la 2e ligne de catalina.chauve-souris (après le @echo off) ajouter ceci:
ENSEMBLE APP_MASTER_PASSWORD=foo
Peut ne pas être la meilleure approche, mais fonctionne
OriginalL'auteur
Si vous êtes à partir de votre Tomcat depuis Eclipse ("Serveurs" de la vue) alors vous devriez avoir un "Run/Run Configuration" (menu) entrée appelée "Apache Tomcat, Tomcat ...". Lorsque vous sélectionnez cette entrée dans la liste des types de configurations d'exécution, vous obtenez une fenêtre avec plusieurs onglets, dont l'un est intitulé "Environnement". De là, vous pouvez configurer les variables d'environnement de votre serveur Tomcat. Assurez-vous de redémarrer Tomcat par la suite.
OriginalL'auteur