jboss6配置JMS

package com.jms;

 

import java.util.Hashtable;

 

import javax.jms.*;

import javax.naming.Context;

import javax.naming.InitialContext;

import javax.naming.NamingException;

 

public class SendRecvClient {

    static CountDown done = new CountDown(1);

    QueueConnection conn;

    QueueSession session;

    Queue que;

 

    public static class ExListener implements MessageListener {

        public void onMessage(Message msg) {

            done.release();

            TextMessage tm = (TextMessage)msg;

            try {

                System.out.println("onMessage, recv text=" + tm.getText());

            } catch (Exception e) {

                e.printStackTrace();

            }

        }

 

    }

 

    @SuppressWarnings("unchecked")

    public void setupPTP() throws NamingException, JMSException {

//        Hashtable env = new Hashtable();

//        env.put(Context.INITIAL_CONTEXT_FACTORY, "org.jnp.interfaces.NamingContextFactory");

//        env.put(Context.PROVIDER_URL, "localhost:1099");

        InitialContext iniCtx = new InitialContext();

        Object tmp = iniCtx.lookup("ConnectionFactory");

        QueueConnectionFactory qcf = (QueueConnectionFactory)tmp;

        conn = qcf.createQueueConnection();

        que = (Queue)iniCtx.lookup("/queue/DLQ");

        session = conn.createQueueSession(false, QueueSession.AUTO_ACKNOWLEDGE);

        conn.start();

    }

 

    public void sendRecvAsync(String text) throws NamingException, JMSException {

        System.out.println("Begin sendRecvAsyc");

        setupPTP();

        QueueReceiver recv = session.createReceiver(que);

        recv.setMessageListener(new ExListener());

        QueueSender send = session.createSender(que);

        TextMessage tm = session.createTextMessage(text);

        send.send(tm);

        System.out.println("sendRecvAsyc sent=" + tm.getText());

        send.close();

        System.out.println("End sendRecvAsyc");

    }

 

    public void stop() throws JMSException {

        conn.stop();

        session.close();

        conn.close();

    }

 

    public static void main(String[] args) {

        SendRecvClient client = new SendRecvClient();

        try {

            client.sendRecvAsync("hello world");

 

        } catch (NamingException e) {

            // TODO Auto-generated catch block

            e.printStackTrace();

        } catch (JMSException e) {

            // TODO Auto-generated catch block

            e.printStackTrace();

        } catch (Exception e) {

            // TODO Auto-generated catch block

            e.printStackTrace();

        }

    }

 

}

注意:jboss6的JMS设置在deploy目录hornetq下hornetq-jms.xml

        把jboss final6/client下jbossall-client.jar加入到jre路径下

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值