конфигурация cronTrigger (с кварцем opensymphony)

У меня есть веб-приложение, которое должно что-то делать каждый, скажем, в первый день каждого месяца.

Это приложение GWT, разделенное на 4 проекта (если это когда-либо имеет значение), и я добавил эти банки с помощью Maven (который обновил мой pom.xml):

opensymphony кварц 1.6.3 общие коллекции

Поскольку я уже использую Spring, я следовал этому руководству (Учебник на французском языке)

и добавил то, что написано в учебнике, в мой файл application-context.xml.

Во время компиляции проблем нет, но во время выполнения у меня есть эта ошибка:

com.google.gwt.user.client.rpc.StatusCodeException: Error 500 Error creating bean with name 'schedulerFactory' defined in class path resource [application-context.xml]: Cannot resolve reference to bean 'cronTrigger' while setting bean property 'triggers' with key [0];nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cronTrigger' defined in class path resource [application-context.xml]: Error setting property values;nested exception is org.springframework.beans.PropertyBatchUpdateException;nested PropertyAccessExceptions (1) are: PropertyAccessException 1: org.springframework.beans.MethodInvocationException: Property 'cronExpression' threw exception;nested exception is java.text.ParseException: Unexpected end of expression.

Откуда это взялось ?

Часть моего application-context.xml:

<!-- Configuration du crontrigger -->
<bean id="schedulerFactory" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
    <property name="triggers">
        <list>
            <ref bean="cronTrigger" />
        </list>
    </property>
</bean>
<bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
    <property name="jobDetail">
        <ref local="exampleJob" />
    </property>

    <!-- run every day at 6AM -->
    <property name="cronExpression" value="0 0 6 * * ?" />
</bean>
<bean id="exampleJob" class="org.springframework.scheduling.quartz.JobDetailBean">
    <property name="jobClass" value="fr.web.utils.ExampleJob" />
    <property name="jobDataAsMap">
        <map>
            <entry key="timeout" value="5" />
        </map>
    </property>
</bean>

person l0r3nz4cc10    schedule 21.04.2011    source источник


Ответы (1)


Проблема в том, что вы дали ссылку в триггере планировщика cronTrigger, который вы не объявили в файле XML.

Предоставьте XML для более подробного ответа

Обновить

Ваше cronExpression кажется недействительным 0 0 6 * * ? сделайте его 0 0 6 * *  ? обратите внимание на последний пробел перед ?

person jmj    schedule 21.04.2011
comment
Ну ошибки больше нет. Спасибо ! Но не могли бы вы объяснить разницу между моим выражением лица и вашим? - person l0r3nz4cc10; 21.04.2011