Strange one indeed. 
You ConnectionFactory is Springs SingleConnectionFactory, which will only ever 
create a single connection, not multiple.
Is there possibly another process using the exact same configuration (i.e. the 
exact same connectionId)? 
Have you tried a different connection Id?

You may also want to configure for CACHE_CONSUMER cache level in the 
DefaultMessageListenerContainer, although I don't see how this would impact 
your current error. 

Regards,

Torsten Mielke
tors...@fusesource.com
tmie...@blogspot.com


On Aug 25, 2012, at 3:47 AM, paul.dark wrote:

> Hi,guys:
> I'm using activemq(now 5.6.0, early in 5.5.0) and spring 3.1,to configure a
> durable topic subscription(queue and non-durable topic I configured before
> both ok).
> I'm search both this forum both google, and try many solutions I can found,
> but no effect.
> 
> when my tomcat complete, tomcat console continually show error message:
> *Could not refresh JMS Connection for destination 'topic://xxx.topic' -
> retrying in 5000 ms. Cause: Broker: localhost - Client: clientId_007 already
> connected from tcp://127.0.0.1:XXXXX*
> 
> And activemq console show message continually:
> * WARN | Transport Connection to: tcp://127.0.0.1:XXXXX failed:
> java.io.EOFException
> WARN | Failed to add Connection ID:XXX-T2300-63744-1345856322767-0:353,
> reason: javax.jms.InvalidClientIDException: Broker: localhost - Client:
> clientId_007 already connected from tcp://127.0.0.1
> :XXXXXX*
> 
> And soonly(about 1hour), tomcat will be out of memoy.
> 
> I think this must be spring attempt to create multi connection  to activemq,
> but durable topic subscription need use single clientId, so my question is:
> how can I create a WORKING durable topic subscription spring listener?
> 
> this is my sample spring config(jms part):
> <beans>
>       
> <bean id="singleFactory"
> class="org.springframework.jms.connection.SingleConnectionFactory" >
>       <property  name="targetConnectionFactory"
> ref="topicReceiveConnectionFactory" />
>       <property name="clientId" value="clientId_007"/> 
> </bean>
>       
> <bean id="topicReceiveConnectionFactory"
> class="org.apache.activemq.ActiveMQConnectionFactory">
>       <property name="brokerURL" value="tcp://127.0.0.1:6117" />
> </bean>
> 
> <bean id="shortMessageListner" class="XXX.MessageConsumerImpl">
> </bean>
>       
> <bean id="shortMessageDestination"
> class="org.apache.activemq.command.ActiveMQTopic">
>       <constructor-arg index="0" value="XXX.topic" />
> </bean>
> 
> <bean id="topicConsumerContainer"
> class="org.springframework.jms.listener.DefaultMessageListenerContainer">
>       <property name="connectionFactory" ref="singleFactory" />
>       <property name="destination" ref="shortMessageDestination" />
>       <property name="messageListener" ref="shortMessageListner" />           
>       <property name="pubSubDomain" value="true" />
>       <property name="subscriptionDurable" value="true" />
>       <property name="concurrentConsumers" value="1"/>  
>       <property name="maxConcurrentConsumers" value="1"/>  
>       <property name="durableSubscriptionName" value="555"/>
>       <property name="receiveTimeout" value="10000"/> 
> </bean>
>               
> 
> </beans>
> 
> PS: I changed much configuration methd and config value, but no effect.
> 
> THANKS IN ADVANCE!
> 
> 
> 
> 
> 
> 
> 
> --
> View this message in context: 
> http://activemq.2283324.n4.nabble.com/Error-configuration-durable-topic-subscription-using-spring-listener-tp4655560.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.





Reply via email to