Java applicationContext.xml lancement séquentiel des beans
Bonjour,
J'ai un fichier applicationContext.xml qui me lance 2 triggers
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98
|
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location">
<value>file:D:\pratic.properties</value>
</property>
</bean>
<bean id="date" class="java.util.Date" />
<!-- MAIL -->
<bean id="MailManager" class="titi">
<property name="session" ref="MailSession" />
<property name="properties">
<props>
<prop key="mail.manager.delete.message">true</prop>
<prop key="mail.manager.overwrite.message">true</prop>
<prop key="directory.ticket.com">${FileSearcher_Pratic.Tickets_de_comm}</prop>
</props>
</property>
</bean>
<!-- PRATIC -->
<bean id="Loader_Pratic_Target"
class="toto">
<property name="fileSearcher" ref="FileSearcher_Pratic"/>
<property name="fileFilter" ref="FileFilter" />
<property name="dao" ref="Dao"/>
<property name="fileLoads">
<list>
<ref local="FileLoad_Pratic" />
</list>
</property>
</bean>
<bean id="Loader_Pratic" parent="BaseTransactionProxy">
<property name="target" ref="Loader_Pratic_Target"/>
</bean>
<bean id="jobDetailMailManager"
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject" ref="MailManager" />
<property name="targetMethod" value="process" />
<property name="concurrent" value="false" />
</bean>
<bean id="simpleTriggerMailManager"
class="org.springframework.scheduling.quartz.SimpleTriggerBean">
<property name="jobDetail" ref="jobDetailMailManager" />
<property name="startDelay" value="0000" />
<property name="repeatInterval" value="2000" />
<property name="repeatCount" value="0" />
</bean>
<bean id="jobDetailLoader"
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject" ref="Loader_Pratic" />
<property name="targetMethod" value="load" />
<property name="concurrent" value="false" />
</bean>
<bean id="simpleTriggerLoader"
class="org.springframework.scheduling.quartz.SimpleTriggerBean">
<property name="jobDetail" ref="jobDetailLoader" />
<property name="startDelay" value="0000" />
<property name="repeatInterval" value="2000" />
<property name="repeatCount" value="0" />
</bean>
<bean
class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="simpleTriggerMailManager" />
<ref bean="simpleTriggerLoader" />
</list>
</property>
</bean>
</beans> |
Maintenant, le problème est que mes 2 triggers (simpleTriggerMailManager et simpleTriggerLoader) s'exécute en même temps et tournent donc en parallèle.
Moi, je souhaiterais qu'ils tournent de manière séquentielle.
D'abord le 1° puis le 2°.
Avez vous une idée SVP ?
Je suis parti du développement suivant :
suppression de <ref bean="simpleTriggerLoader" /> dans le dernier bean, pour l'ajouter à la fin du dernier bean de la chaîne lancée par le bean MailManager. Mais ça ne fonctionne pas.
Merci pour votre aide.
Ritchie.