Je souhaite déployer plusieurs copies indépendantes d'une application Web particulière sur le même serveur Tomcat sous différents chemins de contexte. Chaque application web aura besoin de différents paramètres de configuration (nom de la base de données, mot de passe, etc), mais je voudrais garder les guerres exactement identiques.config externe basé sur le chemin de contexte
Mon plan était que l'application détermine son chemin de contexte au démarrage, puis lisait un fichier .properties spécifique en dehors de tomcat identifié par le chemin du contexte. Par exemple, si une guerre a été déployée sur {tomcat path}/webapps/ananas, alors je voudrais lire /config/pineapple.properties
J'ai essayé de trouver un moyen d'injecter une instance de ServletContext via spring (3), mais tous les conseils que j'ai pu voir jusqu'ici utilisent l'obsolète ServletContextFactoryBean.
Y a-t-il un meilleur moyen d'obtenir le chemin du contexte injecté ou une meilleure façon de charger les fichiers externes en fonction du chemin du contexte? Étendre Propertyplaceholderconfigurer pour utiliser DB pour récupérer les valeurs.
puis-je vous demander pourquoi vous voulez faire cela? – shsteimer
J'ai une application qui est utilisée par plusieurs utilisateurs, indépendamment l'un de l'autre. l'application est identique pour tous les utilisateurs, la seule différence étant les spécificités de la connexion à la base de données. je voudrais seulement construire une guerre qui sache trouver la bonne config basée sur le chemin de contexte de servlet (ou d'autres méta-données externes) – Keith