0

我正在尝试与 Apache Camel 捆绑的 JMS 示例

ApplicationContext context = new ClassPathXmlApplicationContext("camel-config.xml");

producer)
ProducerTemplate camelTemplate = context.getBean("camelTemplate", ProducerTemplate.class);

System.out.println("Invoking the multiply with 22");
int responseData = (Integer)camelTemplate.sendBody("jms:queue:numbers", ExchangePattern.InOut, 22);
System.out.println("... the result is: " + responseData);

这是代码。当我作为独立应用程序运行时,这非常有效。

我刚刚放入一个 servlet 并尝试运行它。我收到此错误 OUT 消息未在内部收到

4

1 回答 1

0

这真是我犯的一个错误。

想删除问题。但许多人可能会犯同样的错误

camelTemplate.sendBody("jms:queue:numbers", ExchangePattern.InOut, 22);

问题出在上面的行上。我将 22 作为参数传递,它是一个整数,但 JSM 中的真正方法是接收 InputStream 作为参数。

当我改变它时,问题得到了解决。

于 2013-01-02T06:17:22.620 回答