一般设置MQ触发器的目的有两种,一是自动启动发送端通道,二是监视队列消息,一旦发现新的消息,则利用触发器启动相应的处理进程。
如果是利用触发器自动启动发送端通道,使用方法一,如果是利用触发器启动用户进程,使用方法二。
方法一:
1.在传输通道上设置触发器,打开触发器控制,类型为"第一个"
2.初始队列为SYSTEM.CHANNEL.INITQ,该队列为MQ专用的通道启动队列,不需要手工启动其触发监视器
3.触发器数据为发送端通道名称,例如01.SENDER
4.在发送端通道不活动的情况下,在传输通道放入消息测试,会发现消息依然能正常发送到远程队列对应的本地队列。
方法二:
1.创建启动进入队列管理器QmgrName
crtmqm QmgrName strmqm QmgrName runmqsc QmgrName
2.创建一个触发启动队列
DEFINE QLOCAL('JAVA.TRIGGER.QUEUE') REPLACE + DESCR('Application queue to test triggering') + SHARE + TRIGGER + TRIGTYPE (EVERY) + INITQ('JAVA.INIT.QUEUE') + PROCESS('JAVA.PROCESS')
3.定义进程 所谓进程就是触发器要触发的程序。本例中进程名称为:"Notepad.exe"
DEFINE PROCESS('JAVA.PROCESS') REPLACE + DESCR('Process to test triggering') + APPLICID('Notepad.exe')
4.在队列上设置触发器,一般为本地队列,打开触发器控制,类型根据自己的需要选择"第一个","每个" 还是 "根据消息数量"。
DEFINE QLOCAL('JAVA.INIT.QUEUE') REPLACE + DESCR('Initiation queue to test triggering')
5.启动触发监视器
runmqtrm -m QmgrName -q JAVA.INIT.QUEUE
* Note: It must be started in the directory where JavaTrigger.class
resides so that JavaTrigger.class can be loaded from the
current directory and resolved by "." in the classpath.
If your java code is included in a package, then the jar may
be added to the classpath and the location where runmqtrm is
started does not matter.
6.在本地队列放入消息进行测试。
Put a message on JAVA.TRIGGER.QUEUE. The trigger information along
with the first 20 characters of the message is displayed in the
window where runmqtrm is active.
amqsput JAVA.TRIGGER.QUEUE QmgrName
每放一条消息,都会打开一次Notepad.exe。
方法二也可以完成方法一的工作,只需要将进程定义中的应用程序标识改为 runmqchl -m QAGWY -c 01.SENDER就可以了,但MQ中提供了专用的通道启动队列,而该队列不需要手工启动触发监视器,因此方法一比方法二的步骤要少,配置也简单,所以在利用触发器自动启动发送端通道的情况下,还是方法一更好。
以上测试在IBM WEBSPHERE MQ7.1测试通过。
参考文章:http://blog.csdn.net/firefight/article/details/1886255
http://www.cnblogs.com/windows/archive/2012/09/25/2701609.html
相关推荐
IBM WebSphere MQ是IBM业界领先面向消息的中间件产品,也是MQ系列产品的基础和核心,它使不同的应用程序能够以企业级的性能,在广泛的平台上安全而可靠地通讯。
IBM websphereMQ 8.0.0.5 lib包; IBM\WebSphere MQ\java\lib下的文件 文件列表: com.ibm.mq.jms.Nojndi.jar com.ibm.mq.pcf.jar com.ibm.mq.allclient.jar com.ibm.mq.postcard.jar com.ibm.mq.axis2.jar ...
IBM Websphere MQ 教程之备份与恢复
IBM WebSphere MQ 技术白皮书.doc
IBM Websphere mq安装IBM Websphere mq安装
一个C#实现IBM WebSphere MQ 消息收发的实例,包含 发送接收等. 使用的时候只需要修改 appconfig 文件的内容即可. 如有问题.请留言
IBM websphere MQ教学材料0094
IBM Websphere MQ入门教程
IBM WebSphere MQ 8.0windows安装包 part2
IBM WebSphere MQ安装使用教程详细图解,根据本教程您可以迅速使用mq,不要犹豫了,快点下载吧
IBM WebSphere MQ 学习分享
Java下操作IBM Websphere MQ的项目案例, eclipse工程压缩包, 导入直接可用.
IBM WebSphere MQ 8.0 linux 安装包 part1
Java连接IBM WebSphere MQ 7处理队列信息所需jar包,从安装目录直接打的包。主要包括: /com.ibm.mq.commonservices.jar /com.ibm.mq.defaultconfig.jar /com.ibm.mq.fta.jar /com.ibm.mq.headers.jar /...
WebSphere MQ 所能解决的业务问题的种类,并了解 WebSphere MQ 如何能够帮助您满足业务要求。
IBM WebSphere MQ 8.0windows安装包 part 1
第一部分 Websphere MQ原理和体系结构 第一章Websphere MQ原理 目标 1, 了解什么是中间件,以及中间件的特点。 2, 介绍WebSphere MQ的原理。 3, 介绍WebSphere MQ的特性和优点。 1.1中间件 中间件处于应用软件和...
很全的IBM WebSphere MQ 错误码大全
IBM WebSphere MQ Telemetry性能测试报告