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.