【发布时间】:2017-11-02 09:55:28
【问题描述】:
这里只获取队列正文内容,但想要获取有效负载的值、JMS 标头值、队列类型等。 如果我将 createNewEmployee(String newData) 更改为 createNewEmployee(Message newData) 它会抛出异常,例如找不到方法 createNewEmployee(java.lang.String)
<int-jms:message-driven-channel-adapter id="inBound" destination="requestQueue" channel="msgReceiver" />
<int:service-activator id="msgRouter" input-channel="msgReceiver" output-channel="msgSender" ref="routeClass" method="createNewEmployee"/>
public String createNewEmployee(String newData) {}
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.messaging.Message;
import javax.jms.TextMessage;
public String createEmployee(Message message) {
String response = null;
try {
System.out.println("from message message :" + message);
TextMessage textMessage=(TextMessage)message;
String operation=textMessage.getStringProperty("requestType");
String newData=textMessage.getText();
System.out.println("from operation :"+operation);
System.out.println("from createCmcContact :"+newData);
}
【问题讨论】:
-
请添加更多代码。您究竟在哪里尝试获取标头值?从给定的问题中不清楚。
-
JmsListener 是如何设置的?
-
刚刚编辑的标签错误地标记了 Spring 而不是 Spring-intergration
-
你有正确的
import(org.springframework.messaging.Message) 吗?显示您的完整routeClass。 -
查看我的答案,了解可能的原因和解决方案
标签: java queue weblogic spring-integration