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