Start JMS Container after Cuba Startup

Hi,

I have a jms listener configured in spring.xml as follows:


<bean id="jmsContainer" class="org.springframework.jms.listener.SimpleMessageListenerContainer">
        <property name="connectionFactory" ref="connectionFactory" />
        <property name="destination" ref="defaultDestination" />
        <property name="messageListener" ref="MyListenerJMS" />
        <property name="autoStartup" value="false" />
    </bean>

The listener should be started after Cuba. So, the autoStartup is false.

In an AppLifeCycleListner, the following is present


@Inject private DefaultMessageListenerContainer jmsContainer;

and then


public void applicationStarted() {
...
jmsContainer.start();
..

I am getting unsatisfied dependency error for the container.


 No qualifying bean of type 'org.springframework.jms.listener.DefaultMessageListenerContainer' available:
 expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@javax.inject.Inject()}
        at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:588)

I

Thanks
Naga

ok, found the reason. The bean name must be SimpleMessageListenerContainer.