We're using the camel quartz component (camel version 2.9.0 and quartz in version 1.8.5) to trigger some jobs once a day. The routes are looking similar to this:
from("quartz://aendHistNaechtlicherLauf?cron=0+0+23+*+*+?+*") .routeId(aendHistNaechtlicherLauf) .to("bean:aBean?method=aMethod(${header.fireTime})"); BTW: We have only one camel-context. The problem is: On the first day when the application was started the routes are running perfect, but on the next day we are getting this exception: ERROR | 2012-12-05 23:00:00,003 | | | DefaultQuartzScheduler-camelContext_Worker-6 | org.quartz.core.ErrorLogger - Job (DEFAULT.quartz-end point71 threw an exception. org.quartz.SchedulerException: Job threw an unhandled exception. [See nested exception: org.apache.camel.ResolveEndpointFailedException: Failed to resolve endpoint: quartz://aendHistNaechtlicherLauf?cron=0+0+23+*+*+%3F+* due to: A Quartz job already exists with the name/group: ewoAendHistNaechtlicherLauf/Camel] at org.quartz.core.JobRunShell.run(JobRunShell.java:227) at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:549) Caused by: org.apache.camel.ResolveEndpointFailedException: Failed to resolve endpoint: quartz://aendHistNaechtlicherLauf?cron=0+0+23+*+*+%3F+* due to: A Quartz job already exists with the name/group: aendHistNaechtlicherLauf/Camel at org.apache.camel.impl.DefaultCamelContext.getEndpoint(DefaultCamelContext.java:450) at org.apache.camel.impl.DefaultCamelContext.getEndpoint(DefaultCamelContext.java:463) at org.apache.camel.component.quartz.CamelJob.execute(CamelJob.java:50) at org.quartz.core.JobRunShell.run(JobRunShell.java:216) ... 1 more Caused by: java.lang.IllegalArgumentException: A Quartz job already exists with the name/group: aendHistNaechtlicherLauf/Camel at org.apache.camel.component.quartz.QuartzComponent.createEndpoint(QuartzComponent.java:129) at org.apache.camel.component.quartz.QuartzComponent.createEndpoint(QuartzComponent.java:55) at org.apache.camel.impl.DefaultComponent.createEndpoint(DefaultComponent.java:91) at org.apache.camel.impl.DefaultCamelContext.getEndpoint(DefaultCamelContext.java:432) ... 4 more We belive that this error occurs because the gc deletes the endpoint reference stored in the LRUSoftCache of EndpointRegistry. Shouldn't it be possible that the quartz-component recreates a endpoint, when the EndpointRegistry stores only SoftReferences? In this case the tigger should be deleted, shouldn't it?. Elsewise there has to be a hard reference between entpoint and trigger, so the gc can't free the endpoint reference. Has somebody a solution or an idea why this error occurs? -- View this message in context: http://camel.465427.n5.nabble.com/Camel-QuartzComponent-failed-on-recreating-endpoint-tp5723760.html Sent from the Camel - Users mailing list archive at Nabble.com.