I am trying to get concurrent consumer working with Lingo 1.3, Spring 2.0, ActiveMQ 4.1.
Following the above example mentioned in lingo's home page "Asynchronous calls and callbacks with Lingo and ActiveMQ" and Sanjiv's blog (
http://www.jroller.com/sjivan/entry/asynchronous_calls_and_callbacks_using), I successfully tested with client and server on the same machine, i.e. the server can consumer the multiply clients concurrently. But if I move the server onto different machine, the clients will get concurrentTimeout Exception.
The brokerURL are configured to use broker's IP address on both client and server side.
Although by NOT configuring concurrent consumer in the xml file on the server side, i.e. similar to above example of:
<bean id="optimizerServer" class="org.logicblaze.lingo.jms.JmsServiceExporter" singleton="true">
<property name="destination" ref="optimizerDestination"/>
<property name="service" ref="optimizerServiceImpl"/>
<property name="serviceInterface" value="org.sanjiv.lingo.common.OptimizerService"/>
<property name="connectionFactory" ref="jmsFactory"/>
</bean>
in this way, the client and server on different machine can communicate with each other. But this does not have concurrentConsumer function. i.e.
similar configuration like below does not work:
<bean id="optimizerServer" class="org.springframework.jms.listener.DefaultMessageListenerContainer">
<property name="concurrentConsumers" value="20"/>
<property name="destination" ref="optimizerDestination"/>
<property name="messageListener" ref="optimizerServerListener"/>
<property name="connectionFactory" ref="jmsFactory"/>
</bean>
Any suggestions?
Thanks
Martin