Return-Path: Delivered-To: apmail-camel-users-archive@www.apache.org Received: (qmail 77040 invoked from network); 30 Aug 2009 02:32:21 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 30 Aug 2009 02:32:21 -0000 Received: (qmail 527 invoked by uid 500); 30 Aug 2009 02:32:21 -0000 Delivered-To: apmail-camel-users-archive@camel.apache.org Received: (qmail 464 invoked by uid 500); 30 Aug 2009 02:32:21 -0000 Mailing-List: contact users-help@camel.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: users@camel.apache.org Delivered-To: mailing list users@camel.apache.org Received: (qmail 454 invoked by uid 99); 30 Aug 2009 02:32:21 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 30 Aug 2009 02:32:21 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of lists@nabble.com designates 216.139.236.158 as permitted sender) Received: from [216.139.236.158] (HELO kuber.nabble.com) (216.139.236.158) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 30 Aug 2009 02:32:12 +0000 Received: from isper.nabble.com ([192.168.236.156]) by kuber.nabble.com with esmtp (Exim 4.63) (envelope-from ) id 1MhaCt-0006VO-0a for users@camel.apache.org; Sat, 29 Aug 2009 19:31:51 -0700 Message-ID: <25208131.post@talk.nabble.com> Date: Sat, 29 Aug 2009 19:31:51 -0700 (PDT) From: huntc To: users@camel.apache.org Subject: Camel 2.0 jms producer/consumer log indications around replies and persistence MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Nabble-From: huntc@mac.com X-Virus-Checked: Checked by ClamAV on apache.org Hi there, I've just noted something non-intuitive in the Camel 2.0 debug logs that'd be great to have explained. My scenario is that I wish to send out an exchange to a JMS queue endpoint. I require persistence of the exchange by the broker. I do not require a response. Similarly the queue is to receive exchanges and not send back a response. Here is how the producer is defined: .to(ExchangePattern.InOnly, "jms-sender:com.classactionpl.saveGPSTrackerCollection") Here is how the consumer is defined: from("jms-receiver:com.classactionpl.saveGPSTrackerCollection") .inOnly() jms-sender and jms-receiver are defined as ActiveMQComponents. >From the doco the above should be enough I would have thought. Persistence is provided by default for JMS endpoints. The use of the inOnly exchange pattern should be sufficient to indicate that a reply is not required. However when sending the message the log shows: 2009-08-30 12:24:01,968 [mousIoService-1] DEBUG Configuration$CamelJmsTemplate - Sending JMS message to: queue://com.classactionpl.saveGPSTrackerCollection with message: ActiveMQObjectMessage {commandId = 0, responseRequired = false, messageId = null, originalDestination = null, originalTransactionId = null, producerId = null, destination = null, transactionId = null, expiration = 0, timestamp = 0, arrival = 0, brokerInTime = 0, brokerOutTime = 0, correlationId = null, replyTo = null, persistent = false, type = null, priority = 0, groupID = null, groupSequence = 0, targetConsumerId = null, compressed = false, userID = null, content = org.apache.activemq.util.ByteSequence@67ce08c7, marshalledProperties = null, dataStructure = null, redeliveryCounter = 0, size = 0, properties = {collectionIdentification=urn:x-com-classactionpl-becatech-sentinel-trackers:/cn=Becatech Demo Trackers,dc=becatech,dc=com,ou=tracker-collections,ou=groups,ou=system}, readOnlyProperties = false, readOnlyBody = false, droppable = false} responseRequired = false which is what I would expect. However persistent = false obviously suggests that the exchange will not be persisted by the broker. Is this indeed the case? For the response: 2009-08-30 12:24:02,013 [enerContainer-1] DEBUG EndpointMessageListener - Endpoint[jms-receiver://com.classactionpl.saveGPSTrackerCollection] consumer receiving JMS message: ActiveMQObjectMessage {commandId = 5, responseRequired = true, messageId = ID:Christopher-Hunts-MacBook-Air.local-58232-1251599040542-2:1:1:1:1, originalDestination = null, originalTransactionId = null, producerId = ID:Christopher-Hunts-MacBook-Air.local-58232-1251599040542-2:1:1:1, destination = queue://com.classactionpl.saveGPSTrackerCollection, transactionId = null, expiration = 0, timestamp = 1251599041968, arrival = 0, brokerInTime = 1251599041969, brokerOutTime = 1251599041992, correlationId = null, replyTo = null, persistent = true, type = null, priority = 4, groupID = null, groupSequence = 0, targetConsumerId = null, compressed = false, userID = null, content = org.apache.activemq.util.ByteSequence@67ce08c7, marshalledProperties = org.apache.activemq.util.ByteSequence@51707653, dataStructure = null, redeliveryCounter = 0, size = 4675, properties = {collectionIdentification=urn:x-com-classactionpl-becatech-sentinel-trackers:/cn=Becatech Demo Trackers,dc=becatech,dc=com,ou=tracker-collections,ou=groups,ou=system}, readOnlyProperties = true, readOnlyBody = true, droppable = false} This time I see responseRequired = true (which it isn't) and persistent=true. I'm presuming that the persistent=true is with respect to the response, if there was one, which there isn't. Why though is responseRequired=true? Thank you for helping me understand what Camel is stating. Kind regards, Christopher -- View this message in context: http://www.nabble.com/Camel-2.0-jms-producer-consumer-log-indications-around-replies-and-persistence-tp25208131p25208131.html Sent from the Camel - Users (activemq) mailing list archive at Nabble.com.