Hi,

This is not a bug. The way your DSL has been written seems to desire this
effect of dropping messages on both queues.

If yo need to move from "jms:in" to "jms:out2" without leaving any messages
on "jms:out1" then you need to write your DSL as

     from("jms:in").to("jms:out1");
     from(jms:out1).to(jms:out2");

Cheers,

Ashwin...

honno wrote:
> 
> hi,i write a DSL route,like this : 
> from("jms:in").to("jms:out1").to("jms:out2");
> Then,i send two messages to the queue "in" with activemq5.2,and i receive
> two messages at queue "out1",and two messages at queue "out2".
> These messages are:
> in "out1":
> ActiveMQTextMessage {commandId = 7, responseRequired = true, messageId =
> ID:lenovo-c5e61c7a-2160-1257940811343-0:0:1:1:1, originalDestination =
> null, originalTransactionId = null, producerId =
> ID:lenovo-c5e61c7a-2160-1257940811343-0:0:1:1, destination = queue://out1,
> transactionId = null, expiration = 0, timestamp = 1257940818046, arrival =
> 0, brokerInTime = 1257940818046, brokerOutTime = 1257940883000,
> correlationId = null, replyTo = null, persistent = true, type = null,
> priority = 4, groupID = null, groupSequence = 0, targetConsumerId = null,
> compressed = false, userID = null, content = null, marshalledProperties =
> org.apache.activemq.util.byteseque...@10045eb, dataStructure = null,
> redeliveryCounter = 0, size = 0, properties = {foo=bar,
> CamelJmsDeliveryMode=1}, readOnlyProperties = true, readOnlyBody = true,
> droppable = false, text = <one/>}
> 
> ActiveMQTextMessage {commandId = 14, responseRequired = true, messageId =
> ID:lenovo-c5e61c7a-2160-1257940811343-0:0:1:3:1, originalDestination =
> null, originalTransactionId = null, producerId =
> ID:lenovo-c5e61c7a-2160-1257940811343-0:0:1:3, destination = queue://out1,
> transactionId = null, expiration = 0, timestamp = 1257940818046, arrival =
> 0, brokerInTime = 1257940818046, brokerOutTime = 1257940883000,
> correlationId = null, replyTo = null, persistent = true, type = null,
> priority = 4, groupID = null, groupSequence = 0, targetConsumerId = null,
> compressed = false, userID = null, content = null, marshalledProperties =
> org.apache.activemq.util.byteseque...@90cb03, dataStructure = null,
> redeliveryCounter = 0, size = 0, properties = {foo=a,
> CamelJmsDeliveryMode=1}, readOnlyProperties = true, readOnlyBody = true,
> droppable = false, text = <name>honnom</name>}
> 
> in "out2":
> ActiveMQTextMessage {commandId = 10, responseRequired = true, messageId =
> ID:lenovo-c5e61c7a-2160-1257940811343-0:0:1:2:1, originalDestination =
> null, originalTransactionId = null, producerId =
> ID:lenovo-c5e61c7a-2160-1257940811343-0:0:1:2, destination = queue://out2,
> transactionId = null, expiration = 0, timestamp = 1257940818046, arrival =
> 0, brokerInTime = 1257940818046, brokerOutTime = 1257940831750,
> correlationId = null, replyTo = null, persistent = true, type = null,
> priority = 4, groupID = null, groupSequence = 0, targetConsumerId = null,
> compressed = false, userID = null, content = null, marshalledProperties =
> org.apache.activemq.util.byteseque...@10045eb, dataStructure = null,
> redeliveryCounter = 0, size = 0, properties = {foo=bar,
> CamelJmsDeliveryMode=1}, readOnlyProperties = true, readOnlyBody = true,
> droppable = false, text = <one/>}
> 
> ActiveMQTextMessage {commandId = 17, responseRequired = true, messageId =
> ID:lenovo-c5e61c7a-2160-1257940811343-0:0:1:4:1, originalDestination =
> null, originalTransactionId = null, producerId =
> ID:lenovo-c5e61c7a-2160-1257940811343-0:0:1:4, destination = queue://out2,
> transactionId = null, expiration = 0, timestamp = 1257940818062, arrival =
> 0, brokerInTime = 1257940818062, brokerOutTime = 1257940831750,
> correlationId = null, replyTo = null, persistent = true, type = null,
> priority = 4, groupID = null, groupSequence = 0, targetConsumerId = null,
> compressed = false, userID = null, content = null, marshalledProperties =
> org.apache.activemq.util.byteseque...@90cb03, dataStructure = null,
> redeliveryCounter = 0, size = 0, properties = {foo=a,
> CamelJmsDeliveryMode=1}, readOnlyProperties = true, readOnlyBody = true,
> droppable = false, text = <name>honnom</name>}
> 
> So the both  queue "out1"  and "out2"  receive  the two messages.
> my question is  that why i can receive  two messages in  queue "out1" 
> ,but i just want to send two messages to queue "in" and only receive  two 
> messages in queue "out2" ,not both in queue"out1"  and queue "out2".
> Is this a bug of camel-jms?  Camel  copys  all messages from  "out1"  to
> "out2",but dose not remove 
> all  messages in "out1".
> if i want to remove all messages from  "out1"  to "out2" ,not copying all
> messages from  "out1"  to "out2",
> how can  i config  the route?
> Thanks!
> 
> 


-----
--- 
Ashwin Karpe, Principal Consultant, PS - Opensource Center of Competence 
Progress Software Corporation
14 Oak Park Drive
Bedford, MA 01730
--- 
+1-972-304-9084 (Office) 
+1-972-971-1700 (Mobile) 
---- 
Blog: http://opensourceknowledge.blogspot.com/


-- 
View this message in context: 
http://old.nabble.com/Is-this-a-bug-of-camel-jms--tp26300321p26300669.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to