Il y a cette étiquette <terracottaConfig url="host1:9510,host2:9510,host3:9510"/>
dans le fichier ehcache.xml dans l'application web de printemps. Je veux externaliser l'attribut url de cette balise. La valeur de l'URL doit être remplacée par une propriété du fichier externe. Ce sera très utile si vous suggérez une solution à ce problème.externalisation de la propriété terracottaconfig dans le fichier ehcache.xml à l'intérieur de Spring framework
Répondre
Vous pouvez mettre quelque chose comme ceci - <terracottaConfig url="${terracotta.config.location}" />
, mais le gros problème est que ce sera chargé seulement from the system properties. Il n'est pas résolu à partir de PropertyPlaceHolder car ce n'est pas un fichier de configuration Spring. Par conséquent, si vous voulez utiliser un fichier de configuration externe, vous devrez définir par programme cette propriété système avant que l'application Spring ne commence à charger le fichier ehcache.xml - une façon de le faire sera d'écrire votre code personnalisé ServletContextListener charger votre fichier de propriétés et définir la propriété du système en fonction de cela, de cette façon, lorsque le fichier ehcache.xml est chargé, il serait en mesure de résoudre correctement le placeholder.
Votre réponse m'a aidé à résoudre mon problème. Je veux juste ajouter qu'au lieu de mettre la propriété du système à travers le programme, j'utilise util: propriétés comme suit
<bean id="sysProperties" class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">
<property name="targetObject" value="#{@systemProperties}"/>
<property name="targetMethod" value="putAll"/>
<property name="arguments">
<util:properties>
<prop key="propertyname_used_in_ecache_xml">#{proerties_defined_using_property_factory['propertyname_defined_in_external_properties_file']}</prop>
</util:properties>
</property>
</bean>
<bean id="cacheManager"
class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean" depends-on="sysProperties">
<property name="configLocation">
<value>classpath:ehcache.xml</value>
</property>
</bean>
- 1. Configuration ehcache.xml pour cacheedecorator SelfPopulatingCache dans Spring framework
- 2. EhCache terracottaConfig url dans https
- 3. Externalisation angulaire 2 (fichier de propriétés)
- 4. Prise en charge de type de fichier dans Spring framework
- 5. TestConnectionOnCheckin Propriété de configuration c3p0 dans Hibernate/Spring Framework
- 6. Externalisation de l'initialisation de @InitBinder dans WebBindingInitializer
- 7. Ehcache.xml multiple dans classpath
- 8. PropertyPlaceholderConfigurer de Spring avec la propriété dans un fichier jar
- 9. Externalisation de la disposition de code dans ggplot
- 10. Confusion dans la modularité de Spring Framework
- 11. FileSytemResources dans Spring Framework
- 12. Spring - PropertyPlaceholderConfigurer - Sélectionnez le fichier de propriété basé sur l'environnement
- 13. Configuration du fichier Spring, db et de la propriété
- 14. Spring Framework
- 15. Configuration de la propriété System in Spring
- 16. Comment la valeur de fichier propriété dans la classe de configuration de démarrage Spring
- 17. Spring framework
- 18. Spring framework
- 19. Spring Framework La localisation lit toujours depuis en (anglais) fichier
- 20. Erreur ClassPathXmlApplicationContext, framework Spring
- 21. Configuration Java dans Spring framework
- 22. Définition de la valeur de la propriété bean Spring dans ApplicationContext sans utiliser le fichier de propriétés
- 23. Spring - Injecter une liste de dates à partir du fichier de propriété à une propriété de haricot
- 24. Legacy Spring Framework schéma dans le mappage de schéma chargé
- 25. Entity Framework Calculée problème de la propriété
- 26. Comment lier une propriété bean à une autre et observer les modifications dans Spring Framework
- 27. Comment obtenir les valeurs du fichier de propriétés dans Map en utilisant Spring framework?
- 28. Externalisation de modèles HTML dans Backbone: Avantages/inconvénients
- 29. Restauration de la propriété de navigation supprimée dans Entity Framework
- 30. Spring contexte configuration ehcahe propriété de placholder
Cela pourrait fonctionner, mais mon exigence est telle que je veux charger la valeur de « terracotta.config. emplacement 'du fichier de propriétés externe. Pouvons-nous y parvenir en étendant certaines classes dites 'EhCacheFactoryBean'. – JProgrammer