gpt4 book ai didi

java - WebSphere MQ 确认和回复队列

转载 作者:搜寻专家 更新时间:2023-11-01 03:11:17 24 4
gpt4 key购买 nike

我们正在通过队列管理器 QM_MINE 队列管理器 QM_CLIENT 和队列 CLIENT.DATA 中的远程队列定义 CLIENT.DATA(传输队列、发送/接收 channel 等)发送 XML 文本消息。消息到达目的地(客户端的 CLIENT.DATA 队列)。当前的问题是,一旦消息到达 QM_CLIENT 中的 CLIENT.DATA 自动,就能够在 QM_MINE 中的本地队列 CLIENT.DATA.ACK 上接收确认消息(已发送消息的精确副本)。

我在 reply-to queue 的 WebSphere v7.1 信息中心找到了一些资源和 message acknowledgement 然而,它们对我并没有真正的帮助。

目前为止我尝试过使用reply to queue的方式。我在 QM.OCC 上创建了一个传输队列 QM_MCT。我发送到 CLIENT.DATA 队列的每条消息,我都使用 setJMSReplyTo() 方法指定了回复队列。但是我确定不是这样,我还缺少更多。

MQ 对象总结:

QM_MINE: CLIENT_DATA (remoteQ), QM_CLIENT (transmitQ), CLIENT_DATA_ACK(localQ)

QM_CLIENT: CLIENT_DATA (localQ), QM_MINE (transmitQ),

And, sender/receiver channels at both ends.

源代码片段:

客户数据发送方(交易中):

public class ClientServiceImpl extends JmsGatewaySupport implements ClientService {

@Override
public void sendClientData(String dataXML) {
getJmsTemplate().convertAndSend(dataXML);
}
}

消息转换器:

public Message toMessage(Object o, Session session) throws JMSException, MessageConversionException {
String dataXML = (String) o;
TextMessage message = session.createTextMessage();
message.setJMSReplyTo(replyToQueue);
message.setText(dataXML);
return message;
}

注意:

目前我没有任何 MDP 或 MDB 来监听和使用来自 QM_CLIENT 中的 CLIENT_DATA 队列的消息。我只是从 QM_MINE 发送它,它被 MQ 移动到 QM_CLIENT。我是否需要使用消息才能使其正常工作?

我在 Linux 上使用 java、JMS、Spring 和 WebShere MQ v7.1。将根据要求提供更多信息。

最佳答案

请参阅关于 MQMD.Report 的部分 field 。是的,您确实需要设置回复字段,以便确认可以返回给您。但是,您还需要告诉 WMQ 您希望它生成报告消息。根据需要,将字段设置为 MQRO_COA_WITH_FULL_DATA

关于java - WebSphere MQ 确认和回复队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9503727/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com