Мои знания о JMS крайне слабы, поэтому, пожалуйста, несите меня.Отправка сообщения в QueueChannel
Я пытаюсь отправить простое сообщение на канал сообщений очереди.
@Autowired
private MessageChannel myChannel = null;
@Test
public void testRecieveMethod() {
Message m = ((QueueChannel)myChannel).receive();
System.out.println("HELLO");
}
Программа висит, как ее предполагается, но , когда я пытаюсь отправить сообщение из другой программы, это, кажется, не будет получать получена.
private MessageChannel channel = null;
@Test
public void testMessage() {
channel = super.ctx.getBean("myChannel", MessageChannel.class);
jackMessage message = new ameerMessage("Hello my name is jack");
Message<ameerMessage> msg = MessageBuilder.withPayload(message).build();
channel.send(msg, 10000);
}
Вот мой ApplicationContext
<int:channel id="myChannel">
<int:queue capacity="10"/>
</int:channel>
<jms:inbound-channel-adapter id="JmsAdapter"
connection-factory="connectionFactory"
destination="myQueue"
channel="myChannel">
<int:poller fixed-rate = "1000"/>
</jms:inbound-channel-adapter>
<bean id="myQueue"
class="org.apache.activemq.command.ActiveMQQueue">
<constructor-arg value="MYQUEUE"/>
</bean>
<bean name="connectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
<property name="brokerURL">
<value>tcp://localhost:61616</value>
</property>
</bean>
<bean id="myProcessor"
class="com.jack.springintegration.Processor"/>
</beans>
Не знаю, где я почему сообщение не идет получено. Может кто-нибудь помочь?
Я действительно посмотрел книгу об интеграции, и она упоминала это где-то. Спасибо, что разъяснил это. – SoftwareDude