我在通过 JMS 使用 7.1 jar 连接到 Websphere MQ 中启用 SSL 的队列时出现以下错误。
代码:
public MQMessageSender(String channelName, String hostName,
String portNumber, String queueManagerName, String queueName) {
// Create a MQQueue Factory Object
try {
mqConnectionFact = new MQQueueConnectionFactory();
mqConnectionFact.setChannel("xxx.SVRCONN");
mqConnectionFact.setPort(Integer.parseInt("xxxx"));
mqConnectionFact.setHostName("host1");
//mqConnectionFact.setConnectionNameList("host2(port2)");
mqConnectionFact.setClientReconnectOptions(JMSC.MQCNO_RECONNECT_Q_MGR);
mqConnectionFact.setQueueManager("XXXXX");
mqConnectionFact.setTransportType(JMSC.MQJMS_TP_CLIENT_MQ_TCPIP);
mqConnectionFact.setSSLCipherSuite("SSL_RSA_WITH_RC4_128_SHA");
qConnection = mqConnectionFact.createQueueConnection();
qConnection.start();
qSession = qConnection.createQueueSession(false,
Session.AUTO_ACKNOWLEDGE);
requestQueue = qSession.createQueue(queueName);
} catch (Exception exception) {
exception.printStackTrace();
}
}
错误:
Caused by: com.ibm.mq.MQException: JMSCMQ0001: WebSphere MQ call failed with
compcode '2' ('MQCC_FAILED') reason '2399' ('MQRC_SSL_PEER_NAME_ERROR').
at com.ibm.msg.client.wmq.common.internal.Reason.createException(Reason.java:209)
... 8 more
Caused by: com.ibm.mq.jmqi.JmqiException: CC=2;RC=2399;
AMQ9204: Connection to host 'host1' rejected.
[1=com.ibm.mq.jmqi.JmqiException[CC=2;RC=2399;
AMQ9640: SSL invalid peer name, channel '?', attribute 'OID.2.5.4.17 (x2)'.
[5=OID.2.5.4.17 (x2)]],3=host1(port1),5=RemotePeerName.setValue]
最佳答案
reason '2399' ('MQRC_SSL_PEER_NAME_ERROR')
正在报告错误。参见 2399 (095F) (RC2399): MQRC_SSL_PEER_NAME_ERROR .此外,您还收到以下错误消息:
AMQ9640: SSL invalid peer name, channel '?', attribute 'OID.2.5.4.17 (x2)'.
[5=OID.2.5.4.17 (x2)]],3=host1(port1),5=RemotePeerName.setValue]
它告诉您 peerName 的哪一部分未被识别。它说,OID.2.5.4.17
是邮政编码。
一个简短的 Internet 搜索揭示了这个问题的 APAR,IC83494: WMQ V7.1: JMS CLIENT CONNECTION VIA SSL ENABLED CHANNEL FAILS WITH RC 2399 MQRC_SSL_PEER_NAME_ERROR.
此 APAR 包含在 V7.1 FixPac 3 中。
关于ssl - 使用 7.1 jar 的 WMQ SSL 高可用性 JMS 连接出现错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26168424/