Hi

Ah we have some tickets in JIRA to improve the quartz component for Camel 2.0.

As you just want to use quartz to trigger the even by sending a
"dummy" message to a JMS queue, then you can send some sort of
constant body that can be serialized and send to the JMS queue

from("quartz://myGroup/myTimerName?trigger.repeatInterval=6000&trigger.repeatCount=10").transform(constant("Hello")).
to("jms:queue:events");



On Mon, Dec 15, 2008 at 11:49 AM, iapilgrim <[email protected]> wrote:
>
> Hi,
> I'm very new to Camel.
> My situation is making scheduler for some listeners on JMS queue.
> For example, when I configure this way, the dummyListener will  check event
> in jms queue for every 6s.
>
> from("timer://foo?fixedRate=true&period=6000").to("jms:queue:events");
>        from("jms:queue:events").to("dummyListener");
> I want to improve the scheduler by replace timer with quartz
> from("quartz://myGroup/myTimerName?trigger.repeatInterval=6000&trigger.repeatCount=10").to("jms:queue:events");
>
> But when I run, I got the following error message
>
> [ERROR] processor.DeadLetterChannel Failed delivery for exchangeId:
> ID-pr-vanle/60407-1229325928115/0-2. On delivery attempt: 2 caught:
> java.lang.RuntimeException: org.apache.camel.component.quartz.QuartzEndpoint
> java.lang.RuntimeException: org.apache.camel.component.quartz.QuartzEndpoint
>        at
> org.apache.activemq.command.ActiveMQObjectMessage.storeContent(ActiveMQObjectMessage.java:104)
>        at
> org.apache.activemq.command.ActiveMQObjectMessage.setObject(ActiveMQObjectMessage.java:155)
>        at
> org.apache.activemq.ActiveMQSession.createObjectMessage(ActiveMQSession.java:317)
>        at
> org.apache.camel.component.jms.JmsBinding.createJmsMessage(JmsBinding.java:273)
>        at
> org.apache.camel.component.jms.JmsBinding.makeJmsMessage(JmsBinding.java:139)
>        at
> org.apache.camel.component.jms.JmsProducer$2.createMessage(JmsProducer.java:229)
>        at 
> org.springframework.jms.core.JmsTemplate.doSend(JmsTemplate.java:570)
>        at 
> org.springframework.jms.core.JmsTemplate$4.doInJms(JmsTemplate.java:551)
>        at 
> org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:471)
>        at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:548)
>        at 
> org.apache.camel.component.jms.JmsProducer.process(JmsProducer.java:227)
>        at
> org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncProcessorTypeConverter.java:43)
>        at 
> org.apache.camel.processor.SendProcessor.process(SendProcessor.java:75)
>        at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>        at
> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:155)
>        at
> org.apache.camel.processor.DeadLetterChannel.process(DeadLetterChannel.java:91)
>        at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:57)
>        at
> org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:39)
>        at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:41)
>        at
> org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:66)
>        at
> org.apache.camel.processor.loadbalancer.QueueLoadBalancer.process(QueueLoadBalancer.java:41)
>        at
> org.apache.camel.component.quartz.QuartzEndpoint.onJobExecute(QuartzEndpoint.java:117)
>        at org.apache.camel.component.quartz.CamelJob.execute(CamelJob.java:32)
>        at org.quartz.core.JobRunShell.run(JobRunShell.java:203)
>        at
> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:520)
> Caused by: java.io.NotSerializableException:
> org.apache.camel.component.quartz.QuartzEndpoint
>        at 
> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1156)
>        at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
>        at java.util.HashMap.writeObject(HashMap.java:1001)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>        at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at 
> java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:945)
>        at 
> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1461)
>        at
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
>        at 
> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
>        at
> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
>        at 
> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
>        at
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
>        at 
> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
>        at
> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)
>        at 
> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)
>        at
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)
>        at 
> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
>        at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
>        at
> org.apache.activemq.command.ActiveMQObjectMessage.storeContent(ActiveMQObjectMessage.java:98)
>        ... 24 more
>
> I'm maybe wrong in using quartz and jms. Could you give any example?
> I'd appreciate your help.
> Thanks and regards,
> Van
> --
> View this message in context: 
> http://www.nabble.com/Schedule-JMS-consumer-tp21011689s22882p21011689.html
> Sent from the Camel - Users mailing list archive at Nabble.com.
>
>



-- 

/Claus Ibsen
Apache Camel Committer
Blog: http://davsclaus.blogspot.com/

Reply via email to