Bonjour,
Mon application utilise Spring et quartz, je veux donc (via le placeholder) externaliser mes variables quartz.
Concrètement j'ai ceci : (d'après une doc et des recherches ) :
Dans mon component-context.cml
Et dans mon quartz.properties :
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 <!-- Configuration du PlaceHolder pour l'accès aux variables issues du fichier fichier-config.properties. --> <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="location" value="classpath:fichier-config.properties" /> </bean> <bean id="scheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="jobFactory" ref="springBeanJobFactory" /> <property name="autoStartup" value="true" /> <property name="applicationContextSchedulerContextKey" value="applicationContext" /> <property name="configLocation"> <value>classpath:quartz.properties</value> </property> </bean>
Le problème c'est qu'il ne vas pas chercher mes valeurs, il prend donc les valeurs directs (${..}), par conséquent il me lance l'exception :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 # Configuration quartz à l'aide du PlaceHolder Spring org.quartz.threadPool.class=org.quartz.simpl.SimpleThreadPool org.quartz.threadPool.threadCount=${com_plan_taille_pool_thread} org.quartz.threadPool.threadPriority=${org.quartz.threadPool.threadPriority} et dans mon fichier-config.properties : #Variables quartz #Taille du pool de thread. com_plan_taille_pool_thread=25 #Priorité des threads. org.quartz.threadPool.threadPriority=5
Si je passe des valeurs numériques directement, cela fonctionne..org.quartz.SchedulerConfigException: Could not parse property 'threadCount' into correct data type: java.lang.NumberFormatException: '${com_plan_taille_pool_thread}'
Quelqu'un peut-il m'aider SVP ?
Merci d'avance
Partager