gpt4 book ai didi

java - MQ 客户端应用程序连接到客户端

转载 作者:行者123 更新时间:2023-12-01 19:19:25 25 4
gpt4 key购买 nike

我编写了一个客户端应用程序来连接到 MQ。它在 svrconn channel 上工作正常,但在其他 channel 上无法工作。

我的代码:

try {
// Create a connection factory
JmsFactoryFactory ff = JmsFactoryFactory.getInstance(WMQConstants.WMQ_PROVIDER);
JmsConnectionFactory cf = ff.createConnectionFactory();

// Set the properties
cf.setStringProperty(WMQConstants.WMQ_HOST_NAME, HOST);
cf.setIntProperty(WMQConstants.WMQ_PORT, PORT);
cf.setStringProperty(WMQConstants.WMQ_CHANNEL, CHANNEL);
cf.setIntProperty(WMQConstants.WMQ_CONNECTION_MODE, WMQConstants.WMQ_CM_CLIENT);
cf.setStringProperty(WMQConstants.WMQ_QUEUE_MANAGER, QMGR);
cf.setStringProperty(WMQConstants.WMQ_APPLICATIONNAME, "JmsPutGet (JMS)");
cf.setBooleanProperty(WMQConstants.USER_AUTHENTICATION_MQCSP, true);
cf.setStringProperty(WMQConstants.USERID, APP_USER);
cf.setStringProperty(WMQConstants.PASSWORD, APP_PASSWORD);

// Create JMS objects
context = cf.createContext();
destination = context.createQueue("queue:///" + QUEUE_NAME);

long uniqueNumber = System.currentTimeMillis() % 1000;
TextMessage message = context.createTextMessage("Your lucky number today is " + uniqueNumber);

producer = context.createProducer();
producer.send(destination, message);
System.out.println("Sent message:\n" + message);

consumer = context.createConsumer(destination); // autoclosable
String receivedMessage = consumer.receiveBody(String.class, 15000); // in ms or 15 seconds

System.out.println("\nReceived message:\n" + receivedMessage);

recordSuccess();
}

请帮忙解决以下两个问题:

  1. 如何连接到处于客户端模式的 qmgr?
  2. 如何让此代码也连接到其他 channel ?

现在,当我尝试使用其他 channel 时,会出现以下错误:

JMSWMQ0018:无法使用连接模式“客户端”连接到队列管理器“qmgr 名称”

最佳答案

您已在 cf.setStringProperty(WMQConstants.WMQ_CHANNEL, CHANNEL); 中指定 channel 名称

如果您使用cf.setStringProperty(WMQConstants.WMQ_CHANNEL, "MYOTHERCHANNEL");它会尝试使用该 channel 名称而不是您指定的名称

关于java - MQ 客户端应用程序连接到客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59378608/

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