使用消息驱动牛
第四部:为MDB(MessageDriveBeans)定义部署描述符(l)
在部署的时候,我们要告诉容器(这里使用的是weblogic)有关MDB的信息。使用标注的EJB部署描述符来安装MDBs.因此,我们需要创建一个名为META-INF的文件夹来放置这些部署文件。
META-INF\\l
还帮徐说话。2006年底 在ejb-jar文件中,我们描述MDB类的名称,bean类的地址类型,和安全信息等。下面是这个文件;注意类名称和JMS地址类型(标记的内容根据中描述的特定的创建者而改变。如果你使用的是BEA Weblogic6.0sp1你需要使用到描述)
ejb-jar
enterprise-beans
message-driven
ejb-nameEmailMDB/ejb-name
ailMDB/ejb-class
transaction-typeContainer/transaction-type
message-driven-destination
eue/destination-type
/message-driven-destination
security-identity
run-as-specified-identity
role-namesystem/role-name
/run-as-specified-identity
/security-identity
/message-driven
/enterprise-beans
/ejb-jar
我们在那里告诉容器队列的名称呢?这要放到厂商特定的文件中。比如,如果你部署在BEA WebLogic 6.0上你需要一个l文件,这个文件应该是这样的:
META-INF\\l
weblogic-ejb-jar
weblogic-enterprise-bean
ejb-nameEmailMDB/ejb-name
message-driven-descriptor
pool
max-beans-in-free-pool200/max-beans-in-free-pool
initial-beans-in-free-pool5/initial-beans-in-free-pool
/pool
destination-jndi-nameEmailQueue/destination-jndi-name
/message-driven-descriptor
jndi-namejms/EmailMDB/jndi-name
/weblogic-enterprise-bean
/weblogic-ejb-jar
ejb-name描述的名称对应你在l中定义的bean名称。然后我们可以定义pool(池)信息。在这个例子中我们将拥有最少5个最多200个MDBs实例。这将允许我们有200个并发的消息发送到队列中。描述的内容告诉容器我们将使用EmailQueue查找目的地址。因为我们并没有把它写道代码中,所以如果JMS环境发生变化,我们只需要修改部署描述文件,然后重新部署就可以了。
第五步:打包代码:
现在我们完成了代码和部署描述文件,我们需要把它们打包然后部署到EJB服务器上。这些文件的目录结构大概的样子如下图所示:
例子文件
下载本文的例子.
其中的client,ejb和util目录中应该使编译过的class文件;比如:/client/ass, ../ejb/ass, 和 ../util/ass.现在我们通过部署描述符来打包代码:../code% jar cvf r com META-INF
现在我们有了一个Email MDB的jar文件,我们把它部署到EJB服务器上。为了测试,在部署完bean之后,运行client你应该看到EJB服务器发送了一个email.要是这一切运行正常你需要确保JavaMail API r包含在EJB服务器的CLASSPATH中。
结论
我们已经创建了一个消息驱动Bean,你可以看到在JMS中他作为一个消费者是多么的简单。消息驱动Bean对于EJB组件结构是一个很好的补充,他为开发人员提供了一个方法来创建消费者使它集合化,支持事务处理并且使用了容器的架构。 查看本文来源
郑州专治白癜风的医院北京白癜风专科
孩子不爱吃饭怎么办
- 上一篇:使用消息驱动覆盖
- 下一篇:使用特殊索引的注意事项呢
-
清明时节鱼塘杀虫消毒管理位置
西餐2022年06月13日
-
使用毛巾给短毛猫做清洁工作位置
西餐2022年06月13日
-
使小斗牛犬流眼泪越来越严重的原因位置
西餐2022年06月13日
-
你留意到可卡犬为何会体臭吗位置
西餐2022年06月13日
-
你是适合饲养比熊犬的那一类人群吗位置
西餐2022年06月13日