Bonjour,
Etant encore peu habitué avec spring, j'ai quelque soucis avec la manipulation de plusieurs fichiers .properties
J'explique plus en détail le problème :
Le chemin d'accès à un fichier de configuration se trouve dans un autre fichier de configuration (pour être facilement modifié)
config.properties:
Voiture1.properties:
Code : Sélectionner tout - Visualiser dans une fenêtre à part file.properties.name=test/Voiture1.properties
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3voiture.marque=mercedes voiture.vitesseMax=150 voiture.couleur=bleu
Et là les choses deviennent compliqué, dans mon fichier applicationContext.xml je ne sait pas comment recupérer la valeur de file.properties.name directement :
Quand je met directement le chemin du fichier, tout se passe bien, c'est bien '${file.properties.name}' qui n'est pas compris.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 <bean name="propertyPlaceholder" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <list> <bean class="org.springframework.core.io.ClassPathResource"> <constructor-arg> <value>test/config.properties</value> </constructor-arg> </bean> <bean class="org.springframework.core.io.ClassPathResource"> <constructor-arg> <!-- <value>test/Voiture1.properties</value> --> <value>${file.properties.name}</value> </constructor-arg> </bean> </list> </property> </bean>
voilà l'erreur :
et je vous garantis que mes fichier sont au bon endroit !26 avr. 2011 14:48:20 org.springframework.context.support.AbstractApplicationContext prepareRefresh
INFO: Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@758fc9: startup date [Tue Apr 26 14:48:20 CEST 2011]; root of context hierarchy
26 avr. 2011 14:48:21 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
INFO: Loading XML bean definitions from class path resource [test/applicationContext.xml]
26 avr. 2011 14:48:21 org.springframework.core.io.support.PropertiesLoaderSupport loadProperties
INFO: Loading properties file from class path resource [test/config.properties]
26 avr. 2011 14:48:21 org.springframework.core.io.support.PropertiesLoaderSupport loadProperties
INFO: Loading properties file from class path resource [${file.properties.name}]
26 avr. 2011 14:48:21 org.springframework.beans.factory.support.DefaultSingletonBeanRegistry destroySingletons
INFO: Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@14c1103: defining beans [propertyPlaceholder,Voiture1,Voiture2,Garage]; root of factory hierarchy
org.springframework.beans.factory.BeanInitializationException: Could not load properties; nested exception is java.io.FileNotFoundException: class path resource [${file.properties.name}] cannot be opened because it does not exist
Exception in thread "main" java.lang.NullPointerException
at test.test.main(test.java:23)
TestS2
....|
.....----src
...........|
...........-----test
....................|
....................|-----applicationContext.xml
....................|-----config.properties
....................------Voiture1.properties
Merci d'avance pour votre aide !
Partager