Hi all, sorry if someone already posted the same thing, I've search the whole
forums though.
I'm using JBoss 4.0.0 with JDK 1.5 on Windows 2000 Professional.
When trying to use JMS/MDB I keep getting this error message:
2005-01-07 16:56:43,872 WARN [org.jboss.ejb.plugins.jms.JMSContainerInvoker]
JMS provider failure detected:
javax.jms.JMSException: Error creating the dlq connection: XAConnectionFactory
not bound
at
org.jboss.ejb.plugins.jms.DLQHandler.createService(DLQHandler.java:166)
.......
I've configured the jms-ds.xml like this:
<?xml version="1.0" encoding="UTF-8"?>
<connection-factories>
<!-- ==================================================================== -->
<!-- JMS Stuff -->
<!-- ==================================================================== -->
<!-- The JMS provider loader -->
DefaultJMSProvider
org.jboss.jms.jndi.JNDIProviderAdapter
<!-- The combined connection factory -->
java:/XAConnectionFactory
<!-- The queue connection factory -->
XAConnectionFactory
<!-- The topic factory -->
XAConnectionFactory
<!-- Access JMS via HAJNDI -->
java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
java.naming.provider.url=10.1.0.86:1099
<!-- The server session pool for Message Driven Beans -->
<depends optional-attribute-name="XidFactory">jboss:service=XidFactory
StdJMSPool
org.jboss.jms.asf.StdServerSessionPoolFactory
<!-- JMS XA Resource adapter, use this to get transacted JMS in beans -->
<tx-connection-factory>
<jndi-name>JmsXA</jndi-name>
<xa-transaction/>
<rar-name>jms-ra.rar</rar-name>
<connection-definition>org.jboss.resource.adapter.jms.JmsConnectionFactory</connection-definition>
<config-property name="SessionDefaultType"
type="java.lang.String">javax.jms.Topic</config-property>
<config-property name="JmsProviderAdapterJNDI"
type="java.lang.String">java:/DefaultJMSProvider</config-property>
<max-pool-size>20</max-pool-size>
<security-domain-and-application>JmsXARealm</security-domain-and-application>
</tx-connection-factory>
</connection-factories>
and my ejb-jar.xml looks like this:
<ejb-jar>
<enterprise-beans>
<message-driven>
<ejb-name>MyMessageSenderMDB</ejb-name>
<ejb-class>mymdb.MyMessageSenderMDB</ejb-class>
<transaction-type>Container</transaction-type>
<acknowledge-mode>Auto-acknowledge</acknowledge-mode>
<message-driven-destination>
<destination-type>javax.jms.Queue</destination-type>
<subscription-durability>Durable</subscription-durability>
</message-driven-destination>
<resource-ref>
<res-ref-name>java:/XAConnectionFactory</res-ref-name>
<res-type>javax.jms.QueueConnectionFactory</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Unshareable</res-sharing-scope>
</resource-ref>
<resource-env-ref>
<resource-env-ref-name>queue/MyMessageSenderQueue</resource-env-ref-name>
<resource-env-ref-type>javax.jms.Queue</resource-env-ref-type>
</resource-env-ref>
</message-driven>
</enterprise-beans>
<assembly-descriptor>
<container-transaction>
<ejb-name>MyMessageSenderMDB</ejb-name>
<method-name>onMessage</method-name>
<method-params>
<method-param>javax.jms.Message</method-param>
</method-params>
<trans-attribute>Required</trans-attribute>
</container-transaction>
</assembly-descriptor>
</ejb-jar>
My jboss.xml looks like this:
<enterprise-beans>
<message-driven>
<ejb-name>MyMessageSenderMDB</ejb-name>
<destination-jndi-name>queue/MyMessageSenderQueue</destination-jndi-name>
<resource-ref>
<res-ref-name>java:/XAConnectionFactory</res-ref-name>
<jndi-name>java:/DefaultJMSProvider</jndi-name>
</resource-ref>
<resource-env-ref>
<resource-env-ref-name>queue/MyMessageSenderQueue</resource-env-ref-name>
<jndi-name>queue/MyMessageSenderQueue</jndi-name>
</resource-env-ref>
</message-driven>
And when i'm running my test program to send a message to the Queue I got this
error message:
javax.naming.NameNotFoundException: XAConnectionFactory not bound
at org.jnp.server.NamingServer.getBinding(NamingServer.java:495)
at org.jnp.server.NamingServer.getBinding(NamingServer.java:503)
at org.jnp.server.NamingServer.getObject(NamingServer.java:509)
at org.jnp.server.NamingServer.lookup(NamingServer.java:282)
at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:529)
at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:508)
at javax.naming.InitialContext.lookup(InitialContext.java:351)
......
I'm wondering what's wrong with my setup.
Could anyone please help me on this :(
rgds,
nandipinto
View the original post :
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3861036#3861036
Reply to the post :
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3861036
-------------------------------------------------------
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt
_______________________________________________
JBoss-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jboss-user