users@glassfish.java.net

AQ-JMS: Deployment failed: This bundle has no bean of name [aqmdbBean]

From: <glassfish_at_javadesktop.org>
Date: Fri, 06 Feb 2009 02:25:54 PST

Hi,

i followed the userguide at
https://oracleaq.dev.java.net/userguide.html
to build a message driven bean.

Everything worked fine until the step, where i had to add a deployment descriptor to my message driven bean.

I had to modify the sun-ejb-jar.xml to this
[i]<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sun-ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Application Server 9.0 EJB 3.0//EN" "http://www.sun.com/software/appserver/dtds/sun-ejb-jar_3_0-0.dtd">
<sun-ejb-jar>
    <enterprise-beans>
        <unique-id>1</unique-id>
        <name>aqmdbBean</name>
        <ejb>
            <ejb-name>aqmdbBean</ejb-name>
            <resource-ref>
                <res-ref-name>jms/clientQueue</res-ref-name>
                <jndi-name>jms/clientQueue</jndi-name>
                <default-resource-principal>
                    <name>aquser</name>
                    <password>aquser</password>
                </default-resource-principal>
            </resource-ref>
            <resource-env-ref>
                <resource-env-ref-name>jms/clientQueue</resource-env-ref-name>
                <jndi-name>jms/clientQueue</jndi-name>
            </resource-env-ref>
            <mdb-resource-adapter>
                <resource-adapter-mid>oracleaq</resource-adapter-mid>
                <activation-config>
                    <activation-config-property>
                        <activation-config-property-name>DestinationType</activation-config-property-name>
                        <activation-config-property-value>javax.jms.Queue</activation-config-property-value>
                    </activation-config-property>
                    <activation-config-property>
                        <activation-config-property-name>DestinationProperties</activation-config-property-name>
                        <activation-config-property-value>owner=aqadm,name=clientQueue</activation-config-property-value>
                    </activation-config-property>
                    <activation-config-property>
                        <activation-config-property-name>MaxPoolSize</activation-config-property-name>
                        <activation-config-property-value>32</activation-config-property-value>
                    </activation-config-property>
                    <activation-config-property>
                        <activation-config-property-name>RedeliveryAttempts</activation-config-property-name>
                        <activation-config-property-value>0</activation-config-property-value>
                    </activation-config-property>
                    <activation-config-property>
                        <activation-config-property-name>ReconnectAttempts</activation-config-property-name>
                        <activation-config-property-value>4</activation-config-property-value>
                    </activation-config-property>
                    <activation-config-property>
                        <activation-config-property-name>ReconnectInterval</activation-config-property-name>
                        <activation-config-property-value>10</activation-config-property-value>
                    </activation-config-property>
                    <activation-config-property>
                        <activation-config-property-name>RedeliveryInterval</activation-config-property-name>
                        <activation-config-property-value>1</activation-config-property-value>
                    </activation-config-property>
                </activation-config>
            </mdb-resource-adapter>
        </ejb>
    </enterprise-beans>
</sun-ejb-jar>

[/i]

to get it validated. Now if i try to deploy the mdb i get:

Deploying application in domain failed; Error loading deployment descriptors for module [AQMDB-ejb] -- Referencing error: This bundle has no bean of name [aqmdbBean]



or here the stacktrace:
[#|2009-02-06T11:23:16.492+0100|INFO|sun-appserver9.1|javax.enterprise.system.tools.admin|_ThreadID=47;_ThreadName=httpWorkerThread-4848-2;/var/tmp/s1astempdomain1server1033070596/AQMDB-ejb.jar;|ADM1006:Uploadi
ng the file to:[/var/tmp/s1astempdomain1server1033070596/AQMDB-ejb.jar]|#]

[#|2009-02-06T11:23:17.023+0100|SEVERE|sun-appserver9.1|javax.enterprise.system.tools.deployment|_ThreadID=349;_ThreadName=Thread-29223;_RequestID=99f54093-0001-48a9-9c00-21ef1a8626f4;|Exception occured in J2EE
C Phasejava.lang.IllegalArgumentException: Referencing error: This bundle has no bean of name [aqmdbBean]
com.sun.enterprise.deployment.backend.IASDeploymentException: Error loading deployment descriptors for module [AQMDB-ejb] -- Referencing error: This bundle has no bean of name [aqmdbBean]
        at com.sun.enterprise.deployment.backend.Deployer.loadDescriptors(Deployer.java:390)
        at com.sun.enterprise.deployment.backend.ModuleDeployer.loadDescriptors(ModuleDeployer.java:423)
        at com.sun.enterprise.deployment.backend.EjbModuleDeployer.deploy(EjbModuleDeployer.java:140)
        at com.sun.enterprise.deployment.backend.ModuleDeployer.doRequestFinish(ModuleDeployer.java:179)
        at com.sun.enterprise.deployment.phasing.J2EECPhase.runPhase(J2EECPhase.java:191)
        at com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:108)
        at com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhases(PEDeploymentService.java:919)
        at com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:279)
        at com.sun.enterprise.deployment.phasing.PEDeploymentService.deploy(PEDeploymentService.java:788)
        at com.sun.enterprise.management.deploy.DeployThread.deploy(DeployThread.java:187)
        at com.sun.enterprise.management.deploy.DeployThread.run(DeployThread.java:223)
Caused by: java.lang.IllegalArgumentException: Referencing error: This bundle has no bean of name [aqmdbBean]
        at com.sun.enterprise.deployment.EjbBundleDescriptor.getEjbByName(EjbBundleDescriptor.java:282)
        at com.sun.enterprise.deployment.EjbBundleDescriptor.getEjbByName(EjbBundleDescriptor.java:265)
        at com.sun.enterprise.deployment.node.runtime.EjbNode.setElementValue(EjbNode.java:141)
        at com.sun.enterprise.deployment.node.SaxParserHandler.endElement(SaxParserHandler.java:448)
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:601)
        at com.sun.org.apache.xerces.internal.impl.dtd.XMLNSDTDValidator.endNamespaceScope(XMLNSDTDValidator.java:263)
        at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.handleEndElement(XMLDTDValidator.java:2028)
        at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.endElement(XMLDTDValidator.java:901)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1774)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2930)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
        at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
        at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
        at javax.xml.parsers.SAXParser.parse(SAXParser.java:395)
        at com.sun.enterprise.deployment.io.DeploymentDescriptorFile.read(DeploymentDescriptorFile.java:298)
        at com.sun.enterprise.deployment.archivist.Archivist.readRuntimeDeploymentDescriptor(Archivist.java:527)
        at com.sun.enterprise.deployment.archivist.ApplicationArchivist.openArchive(ApplicationArchivist.java:786)
        at com.sun.enterprise.deployment.archivist.ApplicationArchivist.openArchive(ApplicationArchivist.java:744)
        at com.sun.enterprise.deployment.backend.Deployer.loadDescriptors(Deployer.java:349)
        ... 10 more
|#]

The MDB starts with:
public class aqmdbBean implements MessageListener {...
So aqmdbBean ist the name?!

Can anybody help me?
[Message sent by forum member 'hewizard' (hewizard)]

http://forums.java.net/jive/thread.jspa?messageID=330484