java 连接MQ异常 求指点

杯啤酒 2014-05-12 09:39:55
windows环境下 访问 Linux环境的MQ 服务器 通道编码 819
抛出异常com.ibm.mq.MQException: MQJE001: 完成代码为“1”,原因为“2119”。
at com.ibm.mq.MQDestination.getInt(MQDestination.java:650)
at com.ibm.mq.MQDestination.get(MQDestination.java:445)
at com.ibm.mq.pcf.PCFAgent.getBasicQmgrInfo(PCFAgent.java:390)
at com.ibm.mq.pcf.PCFAgent.open(PCFAgent.java:352)
at com.ibm.mq.pcf.PCFAgent.open(PCFAgent.java:306)
at com.ibm.mq.pcf.PCFAgent.connect(PCFAgent.java:204)
at com.ibm.mq.pcf.PCFAgent.<init>(PCFAgent.java:156)
at com.ibm.mq.pcf.PCFMessageAgent.<init>(PCFMessageAgent.java:126)
at com.netstrong.platform.indicator.mq.MQChannelStatusByApiIndicatroCalculate.getSimpleValue(MQChannelStatusByApiIndicatroCalculate.java:76)
at com.netstrong.platform.indicator.AbstractIndicatorCalculate.getValue(AbstractIndicatorCalculate.java:128)
at com.netstrong.platform.polling.service.PollingService$1.run(PollingService.java:388)
at com.netstrong.platform.polling.timer.PollingTaskService.run(PollingTaskService.java:61)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:662)


代码:
MQEnvironment.CCSID =819; // 要与队列管理器的一样
MQEnvironment.hostname = "192.168.101.246"; // 队列管理器所在的机器名,要能ping通
MQEnvironment.port = Integer.parseInt("1410"); // 队列管理器的监听端口
MQEnvironment.channel = "SYSTEM.DEF.SVRCONN";
PCFMessageAgent agent=null;
try {

MQQueueManager qmgr = new MQQueueManager("A"); // 队列管理器名称
agent = new PCFMessageAgent(qmgr);\\异常处
//agent = new PCFMessageAgent(ip ,Integer.parseInt(port),"SYSTEM.DEF.SVRCONN");
agent.setCharacterSet(1381);
PCFMessage channel_msg = new PCFMessage(CMQCFC.MQCMD_INQUIRE_CHANNEL_STATUS);
channel_msg.addParameter(CMQCFC.MQCACH_CHANNEL_NAME , "*");
PCFMessage[] response = agent.send(channel_msg);
for(int i=0;i<response.length;i++){
String channelname=response[i].getStringParameterValue(CMQCFC.MQCACH_CHANNEL_NAME);
int channelstautstype=response[i].getIntParameterValue(CMQCFC.MQIACH_CHANNEL_STATUS);
if(channelname.trim().equalsIgnoreCase(channel)){
simpleValue.setValue(tostauts(channelstautstype));
return simpleValue;
}
}
result="不活动的";
} catch(Exception e) {
e.printStackTrace();
logger.warn(e, e);
}
...全文
599 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
flowershunzi 2014-05-23
  • 打赏
  • 举报
回复
建议你先用amqsputc命令试试放个消息到QM,看看是否有错误
roam_cat 2014-05-12
  • 打赏
  • 举报
回复
建议你先用amqsputc命令试试放个消息到QM,看看是否有错误

2,633

社区成员

发帖
与我相关
我的任务
社区描述
WebSphere 是 IBM 的软件平台。它包含了编写、运行和监视全天候的工业强度的随需应变 Web 应用程序和跨平台、跨产品解决方案所需要的整个中间件基础设施,如服务器、服务和工具。
社区管理员
  • WebSphere社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧