JBoss MetaData中存在未解析的引用

时间:2014-09-25 10:36:46

标签: jboss ejb ejb-3.0 ejb-3.1 jboss6.x

启动Jboss 6时会收到以下警告。

WARN [MappedReferenceMetaDataResolverDeployer] JBossMetaData中存在未解析的引用: [myEJB.jar#GenDriver:MessageDestinationReferenceMetaData {名称=队列/发电机,类型=的javax.jms.Queue,链接= NULL,忽略-dependecy =假,JNDI名称=无效,resolvoed-JNDI名称= NULL,用法=空}]

与此相关的ejb-jar.xml条目是:

    <session>
            <ejb-name>GeneratorBean</ejb-name>
            <ejb-classgen.bean.GeneratorBean</ejb-class>
            <resource-ref>
                <res-ref-name>jms/JmsXA</res-ref-name>
                <res-type>javax.jms.ConnectionFactory</res-type>
            </resource-ref>
            <message-destination-ref>
                <message-destination-ref-name>queue/generator</message-destination-ref-name>
                <message-destination-type>javax.jms.Queue</message-destination-type>
            </message-destination-ref>
        </session>

<message-driven>
            <ejb-name>GenDriver</ejb-name>
            <ejb-class>gen.bean.GenDriver</ejb-class>
            <transaction-type>Container</transaction-type>
            <message-destination-type>javax.jms.Queue</message-destination-type>

            <activation-config>
                <activation-config-property>
                    <activation-config-property-name>user</activation-config-property-name>
                    <activation-config-property-value>gen</activation-config-property-value>
                </activation-config-property>
                <activation-config-property>
                    <activation-config-property-name>password</activation-config-property-name>
                    <activation-config-property-value>gen</activation-config-property-value>
                </activation-config-property>
                <activation-config-property>
                    <activation-config-property-name>maxSession</activation-config-property-name>
                    <activation-config-property-value>1</activation-config-property-value>
                </activation-config-property>
                <activation-config-property>
                    <activation-config-property-name>dLQJNDIName</activation-config-property-name>
                    <activation-config-property-value>java:/queue/generatorDLQ</activation-config-property-value>
                </activation-config-property>
                <activation-config-property>
                    <activation-config-property-name>dLQUser</activation-config-property-name>
                    <activation-config-property-value>gen</activation-config-property-value>
                </activation-config-property>
                <activation-config-property>
                    <activation-config-property-name>dLQPassword</activation-config-property-name>
                    <activation-config-property-value>gen</activation-config-property-value>
                </activation-config-property>
            </activation-config>

            <resource-ref>
                <res-ref-name>jms/JmsXA</res-ref-name>
                <res-type>javax.jms.ConnectionFactory</res-type>
            </resource-ref>
<message-destination-ref>
                <message-destination-ref-name>queue/generator</message-destination-ref-name>
                <message-destination-type>javax.jms.Queue</message-destination-type>
            </message-destination-ref>
        </message-driven>

有人请说明导致此警告的原因吗?

1 个答案:

答案 0 :(得分:0)

当Bean使用其他未部署的bean时会发生此警告。例如,如果你有两个bean A和B,并且你在Bean A中提供了Bean B的ref。那么当Jboss尝试部署Bean A时,它会搜索Bean B,如果找不到Bean B,它会显示此警告。 您可以忽略此警告。当部署完成并且实际调用Bean A时,它将再次搜索Bean B.