Websphere Application Server(版本:8.0.0.3)JMS配置(m...

1.         总线配置

服务集成>总线 

创建总线,创建时去除“总线安全性”选项,避免客户端请求时的安全拦截;

总线 > mybus(总线名称) > 总线成员

建完后,添加总线成员,选择“服务器”下拉项中的当前server,完成添加

总线 > mybus > 目标

添加队列,队列名称自定义,如MyBusQueue

 

注:

总线 > mybus > 消息传递引擎 > Node01.server1-mybus > 队列点

可查看当前消息队列中的消息数量

总线 > mybus > 消息传递引擎 > Node01.server1-mybus > 队列点 > MyBusQueue@Node01.server1-mybus > 消息

可查看消息队列中的详情

 

2.         队列连接工厂配置

资源>JMS>队列连接工厂

新建“缺省消息传递提供程序”类型连接工厂:

名称:ConnectionFactory

JNDI: jms/MyConnectionFactory

类别:javax.jms.ConnectionFactory

总线名称:mybus(第一步新建的bus

其他默认,创建完成

 

3.         队列配置

资源>JMS>队列

新建“缺省消息传递提供程序”类型队列:

名称:MyMDBQueue

JNDIjms/MyMDBQueue

总线名称:mybus(第一步新建的bus

队列名称:选择MyBusQueue(第一步新建的队列名称)

其他默认,创建完成

 

4.         激活规范配置

资源>JMS>激活规范

新建“缺省消息传递提供程序”激活规范:

名称:MyActivationSpec

JNDI 名称:eis/MyMDBQueue_Act_Spec

目标类型:队列

目标JNDI 名称:jms/MyMDBQueue(第三步新建的队列JNDI

总线名称:mybus(第一步新建的bus

其他默认,创建完成

 

5.         JMS应用部署配置

应用程序>应用程序类型>WebSphere企业应用程序

安装MDBTest.ear,默认安装完成

企业应用程序 > MDBTest > 消息驱动的 bean 侦听器绑定

目标资源 JNDI 名称:eis/MyMDBQueue_Act_Spec

目标 JNDI 名称:jms/MyMDBQueue

 

配置完成,重新启动Websphere Application Server,保证配置生效

应用代码下载: 17003902_eAxP.gif MDBTest.rar  

实际只适用了上面包中的一个MDB 


客户端:

Client代码:

            Properties env1 = new Properties();

           

            env1.put(Context.INITIAL_CONTEXT_FACTORY, "com.ibm.websphere.naming.WsnInitialContextFactory");

           

            env1.put(Context.PROVIDER_URL, "corbaloc:iiop:192.168.160.13:2809"); // server port is 2809

           

            String qcfName = "jms/MyConnectionFactory";

           

            Context context = new InitialContext(env1);

           

            QueueConnectionFactory qConnectionFactory = (QueueConnectionFactory)context.lookup(qcfName);

            Queue queue = (Queue)context.lookup("jms/MyMDBQueue");

            QueueConnection qConnection = qConnectionFactory.createQueueConnection();

            QueueSession qSession = qConnection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);

           

            qSession.createSender(queue);

           

            QueueSender sender = qSession.createSender(queue);

            TextMessage message = qSession.createTextMessage();

            for (int i = 0; i < 10; i++) {

                String messageToSend = "MESSAGE: " + i;

                message.setText(messageToSend);

                // message.setJMSReplyTo(resQueue); // 应答队列

                sender.send(message);

                System.out.println("[dzmonkey] INSIDE JMS SERVLET: MESSAGE -> \"" + message.getText() + "\"");

                String messageID = message.getJMSMessageID();

                boolean bDelivered = message.getJMSRedelivered();

                System.out.println("[dzmonkey] INSIDE JMS SERVLET: MESSAGE ID -> \"" + message.getText() + ":"

                    + messageID + ":" + bDelivered + "\"");

            }

            sender.close();

            qSession.close();

        qConnection.close();

 

 

依赖:

WAS自带JDK

com.ibm.ws.ejb.thinclient_8.0.0.jar

com.ibm.ws.orb_8.0.0.jar

com.ibm.ws.sib.client.thin.jms_8.0.0.jar

 


参考:

http://www.ibm.com/developerworks/websphere/library/techarticles/0504_barcia/0504_barcia.html


转载于:https://my.oschina.net/u/1047983/blog/131420

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值