rss· 投稿· 设为首页· 加入收藏· 繁體版
当前位置: 火魔网 » 程序开发 » JavaEE

ActiveMQ 实践之路(四) ActiveMQ 4.x +JBoss 4.x MDP实战篇

      在<< >>里面我们比较详细的讲解了ActiveMQ与JBoss的整合,
既然选择了JBoss,那么项目里面或多或少都会使用到EJB,下面我们就详细地介绍如何在ActiveMQ 4.x+JBOSS 4.x环境下开发
Message Driven Bean,并且与使用jbossMQ在配置上作了比较详细地比较。这里的OrderMessage 仅仅是一个自动生成的Message Driven Bean,在onMessage方法里面,作日志输入。

一. 配置ejb-jar.xml         1. ejb-jar.xml 不能使用XML DTD,需要使用XML Schema(XSD)
             很多朋友可能使用XDoclet来生成ejb-jar.xml,我这里直接使用XDoclet生成的ejb-jar.xml是

           但是在ActiveMQ+JBoss配置中间需要使用新的XML Schema才能完成对ra的定义,如下.

xml 代码
  • <ejb-jar xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd" version="2.1">  
  • 2. ejb-jar.xml 直接使用JBossMQ的Message DriverBean 和使用ActiveMQ RA配置的区别

            (1) .使用JBossMQ的MessageDrivenBean的 ejb-jar.xml配置

    xml 代码
  •   
  • <message-driven>  
  •     <description>  
  •           
  •     description>  
  •     <display-name>Name for OrderMessagedisplay-name>  
  •     <ejb-name>OrderMessageejb-name>  
  •     <ejb-class>com.mostone.ejb.OrderMessageejb-class>  
  •     <transaction-type>Containertransaction-type>  
  •     <acknowledge-mode>Auto-acknowledgeacknowledge-mode>  
  •     <message-driven-destination>  
  •         <destination-type>javax.jms.Queuedestination-type>  
  •     message-driven-destination>  
  • message-driven>  
  •      (2). 使用ActiveMQ RA配置的MessageDrivenBean的ejb-jar.xml配置

    xml 代码
  •   
  • <message-driven>  
  •     <description>  
  •           
  •     description>  
  •     <display-name>Name for OrderMessagedisplay-name>  
  •     <ejb-name>OrderMessageejb-name>  
  •     <ejb-class>com.mostone.ejb.OrderMessageejb-class>  
  •     <transaction-type>Containertransaction-type>  
  •     <acknowledge-mode>Auto-acknowledgeacknowledge-mode>  
  •       
  •     <activation-config>  
  •         <activation-config-property>  
  •             <activation-config-property-name>destinationactivation-config-property-name>  
  •             <activation-config-property-value>queue.outboundactivation-config-property-value>  
  •         activation-config-property>  
  •         <activation-config-property>  
  •             <activation-config-property-name>destinationTypeactivation-config-property-name>  
  •             <activation-config-property-value>javax.jms.Queueactivation-config-property-value>  
  •         activation-config-property>  
  •     activation-config>  
  • message-driven>  
  •         其中destination,destinationType是ra.xml里面提供的配置属性,(这里官方的文档是Destination,DestinationType, 而实际上activemq-ra.rar里面的ra.xml是destination,destinationType,注意大小写区别)

    顶一下
    (0)
    踩一下
    (0)