I turned on DEBUG for org.apache.camel.component.jms. Here is what I see when I send to the temporary queue.
My client is listening on the temporary queue named ID:mwgk-36105-1265815399399-0:0:1 and you can see from my logging this is the name I pass to ProducerTemplate.sendBody. However from the jms component logging, it actually sends to a different temporary queue named temp-queue://ID:mwgk-33195-1265814473274-2:11:1. I can see from JConsole that the EnqueueCount on ID:mwgk-33195-1265814473274-2:11:1 does get incremented. But my subscriber is not getting any message because camel is sending to a new temporary queue. 09:23:19,661 | INFO | tenerContainer-1 | SDSSFlightPublisher | face.service.SDSSFlightPublisher 154 | sending to endpointName = 'activemq:temp:queue:ID:mwgk-36105-1265815399399-0:0:1' 09:23:19,739 | WARN | tenerContainer-1 | faultManagementLifecycleStrategy | faultManagementLifecycleStrategy 187 | Could not register Endpoint MBean for uri: activemq://temp:queue:ID:mwgk-36105-1265815399399-0:0:1 org.springframework.jmx.export.metadata.InvalidMetadataException: No ManagedResource attribute found for class: class org.apache.camel.component.jms.JmsTemporaryQueueEndpoint at org.springframework.jmx.export.assembler.MetadataMBeanInfoAssembler.populateMBeanDescriptor(MetadataMBeanInfoAssembler.java:279) at org.springframework.jmx.export.assembler.AbstractMBeanInfoAssembler.getMBeanInfo(AbstractMBeanInfoAssembler.java:69) at org.apache.camel.management.DefaultManagementAgent.register(DefaultManagementAgent.java:202) at org.apache.camel.management.DefaultManagementAgent.register(DefaultManagementAgent.java:193) at org.apache.camel.management.ManagedManagementStrategy.manageNamedObject(ManagedManagementStrategy.java:69) at org.apache.camel.management.ManagedManagementStrategy.manageObject(ManagedManagementStrategy.java:62) at org.apache.camel.management.DefaultManagementLifecycleStrategy.onEndpointAdd(DefaultManagementLifecycleStrategy.java:185) at org.apache.camel.impl.DefaultCamelContext.getEndpoint(DefaultCamelContext.java:432) at org.apache.camel.impl.DefaultProducerTemplate.resolveMandatoryEndpoint(DefaultProducerTemplate.java:402) at org.apache.camel.impl.DefaultProducerTemplate.sendBody(DefaultProducerTemplate.java:116) at com.lmco.irad.tfdm.sdssinterface.service.SDSSFlightPublisher.publishNotificationToOneSubscriber(SDSSFlightPublisher.java:155) at com.lmco.irad.tfdm.sdssinterface.service.SDSSFlightManager.reconstituteSubscriberID(SDSSFlightManager.java:128) at com.lmco.irad.tfdm.sdssinterface.service.SDSSSubscriptionHandler.processSubscriptionRequest(SDSSSubscriptionHandler.java:59) 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 org.apache.camel.component.bean.MethodInfo.invoke(MethodInfo.java:195) at org.apache.camel.component.bean.MethodInfo$1.proceed(MethodInfo.java:115) at org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:117) at org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:83) at org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:543) at org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:482) at org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:451) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:323) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:261) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:982) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:974) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:876) at java.lang.Thread.run(Thread.java:619) 09:23:19,747 | DEBUG | tenerContainer-1 | JmsProducer | pache.camel.impl.DefaultProducer 66 | Starting producer: Producer[activemq://temp:queue:ID:mwgk-36105-1265815399399-0:0:1] 09:23:19,770 | DEBUG | tenerContainer-1 | msConfiguration$CamelJmsTemplate | ngframework.jms.core.JmsTemplate 469 | Executing callback on JMS Session: PooledSession { ActiveMQSession {id=ID:mwgk-33195-1265814473274-2:11:1,started=false} } 09:23:19,784 | DEBUG | tenerContainer-1 | msConfiguration$CamelJmsTemplate | msConfiguration$CamelJmsTemplate 280 | Sending JMS message to: temp-queue://ID:mwgk-33195-1265814473274-2:11:1 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.byteseque...@1ce2a846, marshalledProperties = null, dataStructure = null, redeliveryCounter = 0, size = 0, properties = null, readOnlyProperties = false, readOnlyBody = false, droppable = false} Claus Ibsen-2 wrote: > > Camel logs before it send the JMS message > > if (logger.isDebugEnabled()) { > logger.debug("Sending JMS message to: " + > producer.getDestination() + " with message: " + message); > } > > So if you enable DEBUG logging for org.apache.camel.component.jms you > should see that log line > > > > On Wed, Feb 10, 2010 at 3:36 PM, ariekenb <aaron.j.riekenb...@lmco.com> > wrote: >> >> Claus - >> >> The exception is logged as WARN. No exception is thrown out of the >> ProducerTemplate.sendBody call however. >> >> More importantly, no message is ever actually sent to the TemporaryQueue. >> The client listening to the TemporaryQueue does not receive any message, >> and >> JConsole shows the EnqueueCount for the TemporaryQueue remains at 0. >> >> Here is a more complete stack trace showing the error message and log >> level: >> >> 08:30:43,389 | WARN | tenerContainer-1 | >> faultManagementLifecycleStrategy | >> faultManagementLifecycleStrategy 187 | Could not register Endpoint MBean >> for uri: activemq://temp:queue:ID:mwgk-45812-1265812243018-0:0:1 >> org.springframework.jmx.export.metadata.InvalidMetadataException: No >> ManagedResource attribute found for class: class >> org.apache.camel.component.jms.JmsTemporaryQueueEndpoint >> at >> org.springframework.jmx.export.assembler.MetadataMBeanInfoAssembler.populateMBeanDescriptor(MetadataMBeanInfoAssembler.java:279) >> at >> org.springframework.jmx.export.assembler.AbstractMBeanInfoAssembler.getMBeanInfo(AbstractMBeanInfoAssembler.java:69) >> at >> org.apache.camel.management.DefaultManagementAgent.register(DefaultManagementAgent.java:202) >> at >> org.apache.camel.management.DefaultManagementAgent.register(DefaultManagementAgent.java:193) >> at >> org.apache.camel.management.ManagedManagementStrategy.manageNamedObject(ManagedManagementStrategy.java:69) >> at >> org.apache.camel.management.ManagedManagementStrategy.manageObject(ManagedManagementStrategy.java:62) >> at >> org.apache.camel.management.DefaultManagementLifecycleStrategy.onEndpointAdd(DefaultManagementLifecycleStrategy.java:185) >> at >> org.apache.camel.impl.DefaultCamelContext.getEndpoint(DefaultCamelContext.java:432) >> at >> org.apache.camel.impl.DefaultProducerTemplate.resolveMandatoryEndpoint(DefaultProducerTemplate.java:402) >> at >> org.apache.camel.impl.DefaultProducerTemplate.sendBody(DefaultProducerTemplate.java:116) >> >> >> >> >> Claus Ibsen-2 wrote: >>> >>> Hi >>> >>> On Tue, Feb 9, 2010 at 7:46 PM, ariekenb <aaron.j.riekenb...@lmco.com> >>> wrote: >>>> >>>> I'm running apache-servicemix 4.1.0-psc-01-00RC1, using the included >>>> version >>>> of ActiveMQ and Camel. I have some code that's receiving a message >>>> from >>>> an >>>> ActiveMQ queue, then sending a message to the temporary queue it got >>>> from >>>> JMSReplyTo. >>>> >>>> �...@endpointinject >>>> private ProducerTemplate producerTemplate = null; >>>> >>>> >>>> �...@consume(uri = "subscriptionRequestEndpoint") >>>> public synchronized void processSubscriptionRequest( >>>> �...@header("JMSReplyTo") Destination jmsReplyTo, >>>> �...@body SubscriptionManagerRegister >>>> registrationMessage) { >>>> try { >>>> log.info("got registration request client name = >>>> " >>>> + >>>> registrationMessage.getClientName() + " jmsReplyTo = " >>>> + jmsReplyTo); >>>> tempQueueList.add((TemporaryQueue) jmsReplyTo); >>>> publishMessageToSubscriber((TemporaryQueue) >>>> jmsReplyTo, "hello"); >>>> } catch (Exception e) { >>>> log.warn("processSubscriptionRequest", e); >>>> } >>>> } >>>> >>>> public synchronized void publishMessageToSubscriber( >>>> TemporaryQueue temporaryQueue, Serializable >>>> message) { >>>> try { >>>> final String endpointName = >>>> "activemq:temp:queue:" >>>> + temporaryQueue.getQueueName(); >>>> producerTemplate.sendBody(endpointName, >>>> message); >>>> } catch (Exception e) { >>>> log.warn("publishMessageToSubscriber", e); >>>> } >>>> } >>>> >>>> When the producerTemplate.sendBody call runs, I get the following >>>> exception. >>>> Is this a camel bug or am I doing something wrong? >>>> >>>> org.springframework.jmx.export.metadata.InvalidMetadataException: No >>>> ManagedResource attribute found for class: class >>>> org.apache.camel.component.jms.JmsTemporaryQueueEndpoint >>>> at >>>> org.springframework.jmx.export.assembler.MetadataMBeanInfoAssembler.populateMBeanDescriptor(MetadataMBeanInfoAssembler.java:279) >>>> at >>>> org.springframework.jmx.export.assembler.AbstractMBeanInfoAssembler.getMBeanInfo(AbstractMBeanInfoAssembler.java:69) >>>> at >>>> org.apache.camel.management.DefaultManagementAgent.register(DefaultManagementAgent.java:202) >>>> at >>>> org.apache.camel.management.DefaultManagementAgent.register(DefaultManagementAgent.java:193) >>>> at >>>> org.apache.camel.management.ManagedManagementStrategy.manageNamedObject(ManagedManagementStrategy.java:69) >>>> at >>>> org.apache.camel.management.ManagedManagementStrategy.manageObject(ManagedManagementStrategy.java:62) >>>> at >>>> org.apache.camel.management.DefaultManagementLifecycleStrategy.onEndpointAdd(DefaultManagementLifecycleStrategy.java:185) >>>> at >>>> org.apache.camel.impl.DefaultCamelContext.getEndpoint(DefaultCamelContext.java:432) >>>> at >>>> org.apache.camel.impl.DefaultProducerTemplate.resolveMandatoryEndpoint(DefaultProducerTemplate.java:402) >>>> at >>>> org.apache.camel.impl.DefaultProducerTemplate.sendBody(DefaultProducerTemplate.java:116) >>>> >>>> >>> >>> At what level do this stacktrace get logged? ERROR, DEBUG, INFO etc? >>> >>>> -- >>>> View this message in context: >>>> http://old.nabble.com/Attemp-to-send-message-to-activemq-temporary-queue-using-producerTemplate%3A-InvalidMetadataException-tp27520096p27520096.html >>>> Sent from the Camel - Users mailing list archive at Nabble.com. >>>> >>>> >>> >>> >>> >>> -- >>> Claus Ibsen >>> Apache Camel Committer >>> >>> Author of Camel in Action: http://www.manning.com/ibsen/ >>> Open Source Integration: http://fusesource.com >>> Blog: http://davsclaus.blogspot.com/ >>> Twitter: http://twitter.com/davsclaus >>> >>> >> >> -- >> View this message in context: >> http://old.nabble.com/Attemp-to-send-message-to-activemq-temporary-queue-using-producerTemplate%3A-InvalidMetadataException-tp27520096p27532128.html >> Sent from the Camel - Users mailing list archive at Nabble.com. >> >> > > > > -- > Claus Ibsen > Apache Camel Committer > > Author of Camel in Action: http://www.manning.com/ibsen/ > Open Source Integration: http://fusesource.com > Blog: http://davsclaus.blogspot.com/ > Twitter: http://twitter.com/davsclaus > > -- View this message in context: http://old.nabble.com/Attemp-to-send-message-to-activemq-temporary-queue-using-producerTemplate%3A-InvalidMetadataException-tp27520096p27532910.html Sent from the Camel - Users mailing list archive at Nabble.com.