IBM MQ 与 IBM Websphere 联合工作的几点配置
一,配置IBM MQ作为IBM Websphere JMS服务器
1。在WAS管理工具中配置MQ_INSTALL_ROOT 环境变量为 MQ的安装路径;
2。配置WebSphere MQ JMS 提供程序,创建
WebSphere MQ 队列连接工厂,指定 Queue Manager 为IBM MQ中的队列管理器名;
WebSphere MQ 队列目的地,指定 基本队列名 为IBM MQ中的 队列名;
3。创建 消息侦听器服务 中的 侦听器端口,供Message Driver Bean 使用;
二,采用java 代码向远程MQ 队列发送消息
1。引用 com.ibm.mq.jar
2。代码
MQQueueManager qMgr;
MQEnvironment.hostname="192.168.1.102"; // 服务器的IP地址
MQEnvironment.port = 1415; //-- 通道端口号
//MQEnvironment.channel = "S_dailh"; //-- 通道方式
MQEnvironment.channel = "unihzc"; //-- 通道方式
MQEnvironment.CCSID = 1381; //-- 传输字符集
MQEnvironment.properties.put(MQC.TRANSPORT_PROPERTY,MQC.TRANSPORT_MQSERIES);
try{
//qMgr=new MQQueueManager("QM_dailh",MQC.MQCNO_STANDARD_BINDING);
qMgr=new MQQueueManager("QM_unihz",MQC.MQCNO_STANDARD_BINDING);
int openOptions=MQC.MQOO_INPUT_AS_Q_DEF|MQC.MQOO_OUTPUT|MQC.MQOO_INQUIRE;
//MQQueue queue=qMgr.accessQueue("testjms",openOptions,null,null,null);
MQQueue queue=qMgr.accessQueue("unihzq",openOptions,null,null,null);
//建立连接
MQMessage hello=new MQMessage();//要写入队列的消息
try{
hello.format=MQC.MQFMT_STRING ;
hello.characterSet=1381 ;
hello.writeString("这是测试!!!!!!!!!");
}catch(java.io.IOException ex){
out.println("error 2");
}finally{
};
MQPutMessageOptions pmo = new MQPutMessageOptions();
//将消息依次写入队列
for (int i=1;i<=5;i++){
hello.expiry=-1; //设置消息用不过期
queue.put(hello);//将消息放入队列
}
queue.close() ;//关闭队列
qMgr.disconnect(); //断开连接
}catch(Exception ex){
ex.printStackTrace();
}finally{
};