Hi there,
I'm using Glassfish v2.1 with genericra to connect to IBM MQ Series Queues.
There are 2 queues on 2 different hosts.
I have a stateless EJB which sends messages to queue A. This is working.
At the other end, someone receives my message and sends back another one, using [b]a different queue B[/b]
Now I have a MDB which should consume the messages from queue B, but it doesn't.
Here are the questions:
1. Do I have to deploy a second genericra for the other queue?
2. Is this configuration correct?
the ejb-jar.xml:
===============================================================
<?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>
<description><![CDATA[SowuMessageReceiver]]></description>
<display-name>SowuMessageReceiver</display-name>
<enterprise-beans>
<message-driven>
<description><![CDATA[Message Receiver for MQSeries Sowu Queue]]></description>
<display-name>SowuMessageReceiver</display-name>
<ejb-name>SowuMessageReceiver</ejb-name>
<ejb-class>com.bmw.connector.sowu.messagereceiver.SowuMessageReceiver</ejb-class>
<transaction-type>Container</transaction-type>
<acknowledge-mode>Auto-acknowledge</acknowledge-mode>
<message-driven-destination>
<destination-type>javax.jms.Queue</destination-type>
</message-driven-destination>
</message-driven>
</enterprise-beans>
<assembly-descriptor>
<container-transaction>
<method>
<ejb-name>SowuMessageReceiver</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>NotSupported</trans-attribute>
</container-transaction>
</assembly-descriptor>
</ejb-jar>
===============================================================
the sun-ejb-jar.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sun-ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Application Server 9.1.1 EJB 3.0//EN" "
http://www.sun.com/software/appserver/dtds/sun-ejb-jar_3_0-1.dtd">
<sun-ejb-jar>
<enterprise-beans>
<ejb>
<ejb-name>SowuMessageReceiver</ejb-name>
<jndi-name>sowu_queue_out_mn1p</jndi-name>
<mdb-connection-factory>
<jndi-name>sowu_connection_factory_mn1p</jndi-name>
<default-resource-principal>
<name>xxx</name>
<password>xxx</password>
</default-resource-principal>
</mdb-connection-factory>
<!-- Activation related RA specific configuration for this MDB -->
<mdb-resource-adapter>
<!--
resource-adapter-mid points to the Generic Resource Adapter for JMS
-->
<resource-adapter-mid>genericraReceive</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>ConnectionFactoryJndiName</activation-config-property-name>
<activation-config-property-value>sowu_connection_factory_mn1p</activation-config-property-value>
</activation-config-property>
<activation-config-property>
<activation-config-property-name>DestinationJndiName</activation-config-property-name>
<activation-config-property-value>sowu_queue_out_mn1p</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-property>
<activation-config-property-name>SendBadMessagesToDMD</activation-config-property-name>
<activation-config-property-value>false</activation-config-property-value>
</activation-config-property>
</activation-config>
</mdb-resource-adapter>
</ejb>
</enterprise-beans>
</sun-ejb-jar>
====================================================
and here's the RA-config:
<resource-adapter-config object-type="user" resource-adapter-name="genericraReceive">
<property name="SupportsXA" value="false"/>
<property name="Password" value="xxx"/>
<property name="RMPolicy" value="OnePerPhysicalConnection"/>
<property name="LogLevel" value="finest"/>
<property name="ProviderIntegrationMode" value="jndi"/>
<property name="JndiProperties" value="java.naming.factory.url.pkgs=com.ibm.mq.jms.naming,java.naming.factory.initial=com.sun.jndi.fscontext.RefFSContextFactory,java.naming.provider.url=file:/C:/www/fkd/MQSeries/JNDI-Directory"/>
<property name="UserName" value="xxx"/>
</resource-adapter-config>
===============================================================
The logmessages do not show any error during the deployment:
Created the object based on class :com.ibm.mq.jms.MQQueue|#]
About to set properties on queue://MN1P/BMW.NP.SOWUPREIS.FKDFKM?targetClient=1|#]
parseToProperties:null delimited:, seperator:=|#]
ProviderIntegrationMode jndi|#]
GenericJMSRA - getInstance() orig com.sun.genericra.GenericJMSRA_at_6aacffd9{ConnectionFactoryClassName = null},{QueueConnectionFactoryClassName = null},{TopicConnectionFactoryClassName = null},{XAConnectionFactoryClassName = null},{XAQueueConnectionFactoryClassName = null},{XATopicConnectionFactoryClassName = null},{QueueClassName = null},{TopicClassName = null},{UnifiedDestinationClassName = null},{ConnectionFactoryProperties = null},{JndiProperties = java.naming.factory.url.pkgs=com.ibm.mq.jms.naming,java.naming.factory.initial=com.sun.jndi.fscontext.RefFSContextFactory,java.naming.provider.url=file:/C:/www/fkd/MQSeries/JNDI-Directory},{ProviderIntegrationMode = jndi},{CommonSetterMethodName = null},{SupportsXA = false},{DeliveryType = null},{UseFirstXAForRedelivery = false},|#]
Registering a endpoint consumer, transaction support :false|#]
Starting the message consumption|#]
Created non durable connection consumerqueue://QueueB/BMW.NP.SOWUPREIS.FKDFKM?targetClient=1|#]
Does anyone have an idea? It would be great to hear from you soon because I'm out of ideas and also out of time :-(
[Message sent by forum member 'tesis_glassfish' (vbrem_at_tesis.de)]
http://forums.java.net/jive/thread.jspa?messageID=368782