【问题标题】:How to specify an MDB destination name in ejb-jar.xml for JBoss如何在 ejb-jar.xml 中为 JBoss 指定 MDB 目标名称
【发布时间】:2014-10-30 01:34:52
【问题描述】:

我正在尝试在 ejb-jar.xml 中配置 EJB 2.1 MDB。 我的问题是没有明确的方法来指定 MDB 假设要收听的目标(队列名称)。我已经用尽了网络,但没有找到任何有用的信息。

所以在我的 ejb-jar.xml 中,我已经像这样配置了我的 DMB:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN" "http://java.sun.com/dtd/ejb-jar_2_0.dtd">
<ejb-jar>
    <enterprise-beans>   
        <message-driven>
            <ejb-name>LoginListenerMDB</ejb-name>
            <ejb-class>com.mydomain.LoginListener</ejb-class>               
            <transaction-type>Container</transaction-type>                          
            <message-driven-destination>            
                <destination-type>javax.jms.Queue</destination-type>                            
            </message-driven-destination>                   
        </message-driven>
...

如何指定 MDB 应该监听的队列名称或 jndi 名称?

【问题讨论】:

    标签: jboss ejb ejb-jar.xml


    【解决方案1】:

    好的,我想通了。它实际上是在另一个名为 jboss.xml 的配置文件 (eeeegrr) 中定义的:

    <?xml version="1.0"?>
    <!DOCTYPE jboss PUBLIC
        "-//JBoss//DTD JBOSS 6.0//EN"
        "http://www.jboss.org/j2ee/dtd/jboss_6_0.dtd">
    <jboss>
        <enterprise-beans>
    
            <message-driven>
               <ejb-name>LoginListenerMDB</ejb-name>
               <destination-jndi-name>queue/LoginQueue</destination-jndi-name>         
            </message-driven>
    ...
    

    我不明白为什么要这样做?是否允许将同一个 MDB 绑定到多个目的地?

    【讨论】:

    • 我试过了,不行。配置文件好像根本没用过。
    猜你喜欢
    • 1970-01-01
    • 2021-11-18
    • 1970-01-01
    • 2010-12-09
    • 2012-09-19
    • 1970-01-01
    • 2020-12-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多