WEB开发网
开发学院WEB开发Jsp WAS 6与Websphere MQ6的整合 阅读

WAS 6与Websphere MQ6的整合

 2008-01-05 18:39:33 来源:WEB开发网   
核心提示:WAS 6与Websphere MQ6的整合bromon原创 请尊重版权整合 的目的是让MQ作为websphere application server的JMS PRovider,所有的JMS消息会被was转发到MQ队列 中,WAS 6与Websphere MQ6的整合,由于MQ提供了多种平台的API,因此消息的传递可

  WAS 6与Websphere MQ6的整合

bromon原创 请尊重版权

  整合 的目的是让MQ作为websphere application server的JMS PRovider,所有的JMS消息会被was转发到MQ队列 中,由于MQ提供了多种平台的API,因此消息的传递可以不再通过转发的方式。任何平台都可以直接连接到MQ获取/发送消息,减少了跨平台消息传递中的不 确定因素。

  首先在MQ中建立队列治理器、消息队列、服务器连接通道(SYSTEM.DEF.SVRCONN类型的通道)。由于 was将通过CLIENT模式与MQ通信,所以有身份认证的问题,需要在通道上配置MAC用户标识,它的值应该是运行MQ的操作系统的一个用户名称,该用 户应该具有治理员权限,推荐使用启动MQ的用户名称。假如不配置该MAC用户标识,那么运行was的机器必须建立一个与运行MQ完全相同的用户/密码来启 动was,才能提供正确的身份信息。假如采用BINDINF的传输模式,就不需要任何的认证信息,但是该模式只能适用于was和MQ在同一台机器上的情 况。而且一个was环境中,只能答应一个连接工厂使用BINDING模式连接,所以不推荐该模式。
  假设建立起来的队列治理器为 sobeymam,ccsid为1208(Unicode)或者1381(GB2312),通信端口为1414;建立的消息队列为test,ccsid为 1208(Unicode);服务器连接通道为s1,MAC用户标识为bromon。

  下一步是在WAS中建立队列连接工厂,“资源”----“JMS提供者”----“Websphere MQ”----“Websphere MQ队列连接工厂”----“新建”。填写以下内容:

  名称:            cf
  JNDI名称:          jms/cf
  队列治理器:        mam
  主机:            运行MQ的机器名或ip
  端口:            1414(与队列治理器的侦听端口对应)
  通道:            s1(与队列治理器的服务器连接通道对应)
  传输类型:          CLIENT
  取消“已起用XA”选项

  连接工厂的配置完成。

  下一步是建立队列目标。“资源”----“JMS提供者”----“Websphere MQ”----“Websphere MQ队列目标”----“新建”。填写以下内容:

  名称:            test
  JNDI名称:          jms/test
  基本队列名:        test(对应MQ中的本地队列)
  CCSID:            1208
  目标客户机:        MQ

   队列目标的配置完成。需要说明的是,目标客户机的值决定了JMS的消息将以什么格式存放在MQ中。假如是”MQ”,那么消息将直接使用MQSTR格式,纯 文本的存放,任何平台都能够获取消息直接显示。假如是”JMS”,那么消息将使用MSHRF2格式存放,java平台能够不加处理的正常识别,其他平台必 须要做转换才能正确获得消息文本。推荐使用”MQ”。

  假如需要部署消息BEAN获取MQ中的消息,那么还需要配置侦听器端口,“服务器”----“应用服务器”----“server1”----“通信”----“消息传递”----“消息侦听器服务”----“侦听器端口”----“新建”。填写一下内容:

  名称:              test
  连接工厂JNDI名:        jms/cf(对应websphere队列连接工厂的JNDI)
  目标JNDI名:          jms/test(对应websphere队列目标的JNDI)
  
  侦听器端口配置完成,部署消息bean时需提供该侦听器名称。

  重启websphere使配置生效。

编写一个jsp尝试发送消息:

Tags:WAS Websphere MQ

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接