ejb glassfish messageDrivenBean
2015-04-22 17:26
197 查看
coder before you have to set JMS Resources in glassfish.
进入glassfish管理界面 在 jms Resources 中 创建 ConnectionFactories 和 DestinationResources
ConnectionFactories 创建 连接工厂. JNDI Name 必填。resourceType 选择你需要连接的方式。
DestinationResources 新的message queue,或者message topic.
JNDI Name 必填, destinationName 必填,注意下面英文介绍。 resourceType 选择你需要的类型
Preparation work is done.
Create MessageDrivenBean
创建MessageBean ,输入MessageBean名称,
需要注意 在下面选择服务器目标,刚才在glassfish里面创建的 DestinationResources
下一步——>完成。
根据框架生成好所有的代码直接定位到 onMessage 方法
可以如下获取消息的具体内容,进行处理。
SendMessageClient
使用servlet 进行测试。创建一个servlet。
在 servlet 代码中右击 ——>插入代码——>发送JMS消息
自动生成代码段。本人使用netBeans 生成代码段
服务器 glassfish4.1
IDE NetBeans
有任何更好的请留言,互相学习。
进入glassfish管理界面 在 jms Resources 中 创建 ConnectionFactories 和 DestinationResources
ConnectionFactories 创建 连接工厂. JNDI Name 必填。resourceType 选择你需要连接的方式。
DestinationResources 新的message queue,或者message topic.
JNDI Name 必填, destinationName 必填,注意下面英文介绍。 resourceType 选择你需要的类型
Preparation work is done.
Create MessageDrivenBean
创建MessageBean ,输入MessageBean名称,
需要注意 在下面选择服务器目标,刚才在glassfish里面创建的 DestinationResources
下一步——>完成。
根据框架生成好所有的代码直接定位到 onMessage 方法
可以如下获取消息的具体内容,进行处理。
@Override public void onMessage(Message message) { try { //message 有多种消息类型 ObjectMessage 等。 if (message instanceof TextMessage) { TextMessage tMessage = (TextMessage) message; System.out.print(tMessage.getText()); } } catch (JMSException ex) { Logger.getLogger(testMessageBean.class.getName()).log(Level.SEVERE, null, ex); } }
SendMessageClient
使用servlet 进行测试。创建一个servlet。
在 servlet 代码中右击 ——>插入代码——>发送JMS消息
自动生成代码段。本人使用netBeans 生成代码段
@Resource(mappedName = "jms/test") private Queue test; @Inject @JMSConnectionFactory("jms/queue") private JMSContext context; private void sendJMSMessageToTest(String messageData) { context.createProducer().send(test, messageData); }以上代码在调试运行是发送错误所以自己重新修改,如下代码:调试运行。可以很好的工作。
@Resource(mappedName = "jms/test") private Queue test; @Resource(mappedName = "jms/queue") private ConnectionFactory connectionFactory; @Inject @JMSConnectionFactory("jms/queue") private JMSContext context; private void sendJMSMessageToTest(String messageData) { Connection connection =null; Session session = null; try { connection=connectionFactory.createConnection(); session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); MessageProducer messageproducer = session.createProducer(test); messageproducer.send(session.createTextMessage(messageData)); messageproducer.close(); } catch (JMSException ex) { Logger.getLogger(testSendMessage.class.getName()).log(Level.SEVERE, null, ex); } //context.createProducer().send(test, messageData); }
服务器 glassfish4.1
IDE NetBeans
有任何更好的请留言,互相学习。
相关文章推荐
- ejb glassfish messageDrivenBean
- EJB中的Message-Driven Bean理解!
- 如何配置EJB3消息处理并发数[Message Driven Bean]
- Eclipse3.2.1中开发EJB 2.x的Message Driven Bean(MDB)
- Eclipse3.2.1中开发EJB 3.0的Message Driven Bean(MDB)
- 【EJB基础】Message Driven Bean
- 【进阶EJB】深入探讨三种Bean(三)——MessageDriven Bean
- Implement, deploy and call an EJB 3.0 webservice using Glassfish and JAX-WS
- JavaEE:glassfish EJB bug
- SessionBean与MessageDrivenBean
- Message Driven Bean & JMS
- Message Driven Beans Tutorial(新增的EJB类型,绝对精彩!!!!!)
- Message Driven Bean & JMS
- EJB3.0 消息驱动:MDB(Message Driven Bean)
- 消息驱动Bean (Message Driven Bean)
- 消息驱动Bean (Message Driven Bean)
- JBoss IDE 开发EJB3.0 Message Driven Bean
- jms简单例子,servlet做producer,message driven bean做consumer
- JBoss EJB3(Message Driven Beans)備忘記
- Message Driven Bean Strategy