Да, это может быть сделано.Взгляните на DefaultMessageListenerContainer .Внутри вашей конфигурации Spring внутри вашего веб-приложения вы можете иметь:
<bean id="connectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
<property name="brokerURL" ref="brokerUrl" />
</bean>
<bean id="container"
class="org.springframework.jms.listener.DefaultMessageListenerContainer">
<property name="connectionFactory" ref="connectionFactory" />
<property name="destination" ref="queue" />
<property name="messageListener" ref="myMessageListener" />
<property name="cacheLevelName" value="CACHE_CONSUMER" />
</bean>
Где myMessageListener - это ссылка на ваш MessageListener.быть:
- Клиент JMS отправляет сообщение в очередь на брокере ActiveMQ
- Брокер ActiveMQ получает сообщение и передает его одному из потребителей, прослушивающих эту очередь, вв этом случае наш MessageListener внутри Tomcat