2009-10-05 9 views
2

J'ai créé une petite application de console pour voir comment fonctionne le quartz et il était facile de créer un objet applicationcontext dans la méthode principale pour obtenir le run cron. OK maintenant je suis dans un vrai projet géré par maven et qui utilise des tâches cron définies dans certains modules. Chaque module a son propre fichier de configuration de printemps. J'ai eu 3 des modules en utilisant le quartz ainsi il a été installé dans chacun du fichier de configuration de ressort. Le module d'application web est celui qui a la dépendance de chacun des modules.en utilisant le quartz dans une application web avec le printemps

Maintenant, je peu soucieux:

  1. dois-je créé le applicationcontext comme dans le projet de la console ou il est censé être chargé. Si oui, où suis-je censé le charger.

  2. Basé sur la recherche sur Internet J'ai fait en ligne J'utilise MethodInvokingJobDetailFactoryBean pour un test unitaire facile. Et maintenant que je dois utiliser la classe CronExpression pour tester la getNextValidTimeAfter, je ne sais toujours pas comment organiser correctement

Quelqu'un peut-il me donner un coup de main. Je l'apprécierais vraiment. Merci d'avoir lu

Répondre

4

Selon le commentaire, la question est plus proche de "Comment charger le (s) fichier (s) contextuel (s) d'application Spring pour une application Web".

Selon Section 3.8.5, "Convenient ApplicationContext instantiation for web applications", vous pouvez enregistrer un ApplicationContext en utilisant le ContextLoaderListener comme suit (ajouter ceci à votre fichier web.xml):

<context-param> 
    <param-name>contextConfigLocation</param-name> 
    <param-value>/WEB-INF/daoContext.xml /WEB-INF/applicationContext.xml</param-value> 
</context-param> 

<listener> 
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 
</listener> 

<!-- or use the ContextLoaderServlet instead of the above listener 
<servlet> 
    <servlet-name>context</servlet-name> 
    <servlet-class>org.springframework.web.context.ContextLoaderServlet</servlet-class> 
    <load-on-startup>1</load-on-startup> 
</servlet> 
--> 
+0

pascals J'apprécie vraiment vos efforts, mais je ne pense pas que vous me avez compris .English n'étant pas ma langue. Maintenant je n'ai aucun problème à câbler le bean et le trigger et le schedulerfactorybean depuis que je l'ai déjà fait pour mon projet de console. Ce que je voulais dire était que maintenant je suis dans un web application et que je n'ai pas la méthode principale de Java pour appeler l'objet applicationcontext, je suis perdu sur la façon de s'y prendre dans un environnement d'application wep.i édité le post que j'écrivais getNextValid TimeAfter pas getNext. merci –

+0

Ooooohh, je pense que je l'ai maintenant. Je vais mettre à jour ma réponse. –

+0

pascal je commence à voir la lumière maintenant.Une préoccupation.Si je vais par l'auditeur, je vais devoir écrire tous les applicaitoncontexts à l'intérieur de la valeur de param droit ?, mais les contextes d'application sont dans différents modules, donc dans mon cas, le l'utilisation du servlet est convenable. rectifiez-moi si je me trompe.et merci beaucoup beaucoup –

Questions connexes