2011-09-14 37 views
1

有人可以告诉我我需要在jboss中部署消息驱动Bean。特别是我期待在以下问题的答案:JBoss 5.1.0 + EJB 3.1 + JMS

  1. 我需要定义JMS主题,连接工厂等等...在配置文件,如果是在哪里以及如何
  2. 在那里我将指定一个URL来远程JMS服务器

真的很感激

更新#1的任何有用的链接或代码片段:也许我解释自己不是很顺利,我的说明是关于架构。我有部署在单独机器上的外部JMS服务器,我想创建EJB3 MDR Bean以接收来自特定topc的消息。我知道所有的属性,如主机,端口,用户名和密码,我可以通过JMS API发送和接收消息。我想要做的是在jboss上正确创建和配置MDR Bean,但我不确定将主机,端口,用户名,密码等所有这些配置放在哪里......

+1

你有没有为此搜索? http://javabeanz.wordpress.com/2009/06/05/configuring-jms-in-jboss-5/ –

+0

当然,但是对我来说有什么困惑,这是我需要指定的URL到远程服务器 – endryha

+0

我认为我没有很好地解释我自己,请参阅我的更新 – endryha

回答

0

Your Message Driven Bean本身将使用符合标准EJB规范的部署描述符或MDB本身的注释部署到容器中。

这是JBoss社区Wiki的example。它有点复杂,因为它有很多额外的东西,包括事务支持,注入会话bean等等。但它演示了如何从注释创建EJB3 MDB。这可能是值得玩的,只是看看你可以省略。你可能还需要玩一下它才能使它工作(例如,你可能没有用于IMySessionBean的bean--所以也许你会完全摆脱它并用一个println()或其他东西替代以获得自己开始)

至于你的消息生产者如果它的独立Java应用程序的url等将通过提供给你的JNDI InitialContext的属性提供,当创建你的ConnectionFactory。这表现在该example

如果在容器中,参照第一实施例以上,其使用特定于具有相关JCA- addtional特征容器中的JMSXA连接工厂(一个特殊的连接工厂还提供了一个例子连接池等)。

+0

你能告诉我你如何指定url到远程jms服务器吗?或者更好的只是告诉我你的配置 – endryha

+0

请参阅我的这个问题的更新 – endryha

+0

他们在链接。我需要知道你在做什么。请张贴您的MDB和您的客户代码。 – nsfyn55