Hi, You are not supposed to use tow quartz endpoint with same relative path setting. Please change the uri to another path such as "quartz://sync/myTimer2”.
-- Willem Jiang Red Hat, Inc. Web: http://www.redhat.com Blog: http://willemjiang.blogspot.com (English) http://jnn.iteye.com (Chinese) Twitter: willemjiang Weibo: 姜宁willem On May 3, 2015 at 4:02:53 AM, Mansour Al Akeel (mansour.alak...@gmail.com) wrote: > I am just starting with quartz-camel. Toying with a small project, as > I need the stateful capability. > > > public class DataBaseSyncRouteBuilder extends RouteBuilder { > > @Override > public void configure() throws Exception { > > from("quartz://sync/myTimer").process(new Processor() { > @Override > public void process(Exchange exchange) throws Exception { > System.out.println("One second timer..."); > } > }); > } > > } > > This is generating this error: > > [.db.integration.MainApp.main()] SpringCamelContext INFO > Apache Camel 2.15.1 (CamelContext: camel5) is shutdown in 0.046 > seconds > [WARNING] > java.lang.reflect.InvocationTargetException > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) > > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > > at java.lang.reflect.Method.invoke(Method.java:606) > at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:297) > at java.lang.Thread.run(Thread.java:745) > Caused by: org.apache.camel.FailedToStartRouteException: Failed to > start route route2 because of Multiple consumers for the same endpoint > is not allowed: Endpoint[quartz://sync/myTimer] > at > org.apache.camel.impl.DefaultCamelContext.doStartOrResumeRouteConsumers(DefaultCamelContext.java:3142) > > at > org.apache.camel.impl.DefaultCamelContext.doStartRouteConsumers(DefaultCamelContext.java:3099) > > at > org.apache.camel.impl.DefaultCamelContext.safelyStartRouteServices(DefaultCamelContext.java:3029) > > at > org.apache.camel.impl.DefaultCamelContext.safelyStartRouteServices(DefaultCamelContext.java:3042) > > at > org.apache.camel.impl.DefaultCamelContext.startRouteService(DefaultCamelContext.java:2919) > > at > org.apache.camel.impl.DefaultCamelContext.startRoute(DefaultCamelContext.java:843) > > at > org.apache.camel.impl.DefaultCamelContext.startRouteDefinitions(DefaultCamelContext.java:2895) > > at > org.apache.camel.impl.DefaultCamelContext.addRouteDefinitions(DefaultCamelContext.java:775) > > at > org.apache.camel.builder.RouteBuilder.populateRoutes(RouteBuilder.java:397) > at > org.apache.camel.builder.RouteBuilder.addRoutesToCamelContext(RouteBuilder.java:311) > > at > org.apache.camel.impl.DefaultCamelContext$1.call(DefaultCamelContext.java:731) > > at > org.apache.camel.impl.DefaultCamelContext$1.call(DefaultCamelContext.java:728) > > at > org.apache.camel.impl.DefaultCamelContext.doWithDefinedClassLoader(DefaultCamelContext.java:2486) > > at > org.apache.camel.impl.DefaultCamelContext.addRoutes(DefaultCamelContext.java:728) > > at > org.apache.camel.main.MainSupport.postProcessCamelContext(MainSupport.java:476) > > at org.apache.camel.main.MainSupport.postProcessContext(MainSupport.java:405) > > at org.apache.camel.spring.Main.doStart(Main.java:171) > at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61) > at org.apache.camel.main.MainSupport.run(MainSupport.java:150) > at org.apache.camel.main.MainSupport.run(MainSupport.java:354) > > > > Chaging the URL to use quartz2 : > > from("quartz2://sync/myTimer").process(new Processor() { > > > Is causing this error: > > [WARNING] > java.lang.reflect.InvocationTargetException > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) > > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > > at java.lang.reflect.Method.invoke(Method.java:606) > at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:297) > at java.lang.Thread.run(Thread.java:745) > Caused by: org.apache.camel.FailedToCreateRouteException: Failed to > create route route2: Route(route2)[[From[quartz2://sync/myTimer]] -> > [process[Pro... because of Failed to resolve endpoint: > quartz2://sync/myTimer due to: Trigger key sync.myTimer is already in > us$ by Endpoint[quartz2://sync/myTimer] > at org.apache.camel.model.RouteDefinition.addRoutes(RouteDefinition.java:190) > > at > org.apache.camel.impl.DefaultCamelContext.startRoute(DefaultCamelContext.java:841) > > at > org.apache.camel.impl.DefaultCamelContext.startRouteDefinitions(DefaultCamelContext.java:2895) > > at > org.apache.camel.impl.DefaultCamelContext.addRouteDefinitions(DefaultCamelContext.java:775) > > at > org.apache.camel.builder.RouteBuilder.populateRoutes(RouteBuilder.java:397) > at > org.apache.camel.builder.RouteBuilder.addRoutesToCamelContext(RouteBuilder.java:311) > > at > org.apache.camel.impl.DefaultCamelContext$1.call(DefaultCamelContext.java:731) > > at > org.apache.camel.impl.DefaultCamelContext$1.call(DefaultCamelContext.java:728) > > at > org.apache.camel.impl.DefaultCamelContext.doWithDefinedClassLoader(DefaultCamelContext.java:2486) > > at > org.apache.camel.impl.DefaultCamelContext.addRoutes(DefaultCamelContext.java:728) > > at > org.apache.camel.main.MainSupport.postProcessCamelContext(MainSupport.java:476) > > at org.apache.camel.main.MainSupport.postProcessContext(MainSupport.java:405) > > at org.apache.camel.spring.Main.doStart(Main.java:171) > at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61) > at org.apache.camel.main.MainSupport.run(MainSupport.java:150) > at org.apache.camel.main.MainSupport.run(MainSupport.java:354) > > ... > Caused by: java.lang.IllegalArgumentException: Trigger key > sync.myTimer is already in use by Endpoint[quartz2://sync/myTimer] > at > org.apache.camel.component.quartz2.QuartzEndpoint.ensureNoDupTriggerKey(QuartzEndpoint.java:341) > > at > org.apache.camel.component.quartz2.QuartzEndpoint.addJobInScheduler(QuartzEndpoint.java:275) > > at > org.apache.camel.component.quartz2.QuartzEndpoint.doStart(QuartzEndpoint.java:235) > > at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61) > at > org.apache.camel.impl.DefaultCamelContext.startService(DefaultCamelContext.java:2869) > > at > org.apache.camel.impl.DefaultCamelContext.doAddService(DefaultCamelContext.java:1097) > > at > org.apache.camel.impl.DefaultCamelContext.addService(DefaultCamelContext.java:1058) > > at > org.apache.camel.impl.DefaultCamelContext.addService(DefaultCamelContext.java:1054) > > at > org.apache.camel.impl.DefaultCamelContext.getEndpoint(DefaultCamelContext.java:574) > > ... 30 more > > > > Why am I getting an error complaining about the EndPint being in use ?? > > Thank you. >