Leen, The behavior observed is correct because messages could not forwarded till that a jms client (= camel jms endpoint) consume the messages from the topic.
Kind regards, Charles Moulliard Senior Enterprise Architect Apache Camel Committer ***************************** blog : http://cmoulliard.blogspot.com twitter : http://twitter.com/cmoulliard Linkedlin : http://www.linkedin.com/in/charlesmoulliard Apache Camel Group : http://www.linkedin.com/groups?home=&gid=2447439&trk=anet_ug_hm On Thu, Mar 25, 2010 at 11:19 AM, Leen Toelen <[email protected]> wrote: > Hi, > > I have the following topic subscriber > > public void configure() throws Exception { > ActiveMQConnectionFactory connectionFactory = > lookup(ActiveMQConnectionFactory.class); > JmsTransactionManager jmsTransactionManager = > lookup(JmsTransactionManager.class); > > JmsEndpoint topic = (JmsEndpoint) endpoint("activemq:topic:MyTopic"); > topic.setClientId("SomeClientID"); > topic.setDurableSubscriptionName("SomeName"); > topic.setRecoveryInterval(5000);// 5 seconds > topic.setMaxConcurrentConsumers(1); > topic.setConnectionFactory(connectionFactory); > topic.setTransactionManager(jmsTransactionManager); > > JmsEndpoint toStore = (JmsEndpoint) endpoint("activemq:queue:ToStore"); > toStore.setConnectionFactory(connectionFactory); > toStore.setTransactionManager(jmsTransactionManager); > > from(topic). > transacted("PROPAGATION_REQUIRED") > .to(toStore); > } > > And this is a part of the application context > > <!-- setup JMS connection factory --> > <bean id="jmsConnectionFactory" > class="org.apache.activemq.ActiveMQConnectionFactory"> > <property name="brokerURL" value="tcp://localhost:61616" /> > </bean> > > <!-- setup spring jms TX manager --> > <bean id="jmsTransactionManager" > class="org.springframework.jms.connection.JmsTransactionManager"> > <property name="connectionFactory" ref="jmsConnectionFactory" /> > </bean> > > <beans:bean id="activemq" > class="org.apache.camel.component.activemq.ActiveMQComponent"> > <property name="connectionFactory" ref="jmsConnectionFactory" /> > <property name="transacted" value="true" /> > <property name="transactionManager" ref="jmsTransactionManager" /> > </beans:bean> > > This works fine, and topic messages are being forwarded to the queue. But > when I restart the ActiveMQ broker (which is on the same machine but > running > as a different process), topic messages are no longer being forwarded to > the > queue until I restart the camel process. > > What is the recommended way to configure activemq endpoints in camel using > the java dsl? > > Regards, > Leen >
