2011-04-21 1 views
2

매월 첫날을 들여다 보도록 웹 앱이 있습니다. cronTrigger (opensymphony 쿼츠 포함) 구성

그것은 4 개 프로젝트로 나누어 GWT 응용 프로그램의 (즉, 이제까지 중요한 경우) 나 메이븐 (내 pom.xml 파일을 업데이트하는)를 사용하여이 단지를 추가

:

에는 OpenSymphony 석영 1.6.3 평민 - 컬렉션을

나는 이미 Spring을 사용하고 있으므로,이 자습서 (Tutorial in French)

을 따르고 내 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. 

이 오는가 : 컴파일시에

, 아무 문제지만, 런타임에,이 오류가 없다?

내 응용 프로그램의 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> 

답변

3

문제는 당신은 XML 파일에 선언하지 않은 스케줄러의 트리거 cronTrigger에 대한 참조를 준됩니다.

업데이트

귀하의 cronExpression이 아닌 더 자세한 답변을 XML을 제공은 0 0 6 * * ? 오류없이 더 이상 잘 ?

+0

전에 0 0 6 * *  ? 노트 마지막 공간을 만들어 유효한 것으로 보인다. 감사 ! 하지만 내 표현과 당신의 차이점을 설명해 주시겠습니까? – l0r3nz4cc10

+0

표현식이 구문을 따르는 것이 아닙니다. 공백으로 구분해야합니다. [* Cron-Expressions는 CronTrigger 인스턴스를 구성하는 데 사용됩니다. Cron-Expressions은 실제로 일람표의 개별적인 세부 사항을 설명하는 7 개의 하위 표현식으로 구성된 문자열입니다. 이러한 하위 표현식은 공백으로 구분됩니다. *] (http://www.quartz-scheduler.org/docs/tutorial/TutorialLesson06.html) –