users@genericjmsra.java.net

Re: MDB, WMQ, SJSAS, Generic RA

From: Binod <Binod.Pg_at_Sun.COM>
Date: Tue, 21 Mar 2006 10:14:31 +0530

Hi,

> Hi everyone,
>
> I've got the GenericRA to work quite nicely with SJSAS8.1 and
> Websphere MQ5.3 using ProviderIntegrationMode as Javabean. I've
> recently enabled XA support as well and seems to be working fine.

Great! Thanks for sharing that experience.

>
> My only problem now is getting an MDB working correctly. At this
> stage, all I want the MDB to do is retrieve a message from the queue
> and print out the contents. I've attached a modified version of the
> sun-ejb-jar.xml which will access my admin object resource
> (DestinationProperties=BaseQueueName\=TIM.TEST.WRITE,TargetClient\=1)
>
> Now what i've noticed with the MDB is:
>
> 1. It does not pick up any message from the specified queue at all.
> 2. It appears to be creating connections at an interval but it does
> not seem to close them.
> 3. I've set a MaxPoolSize of 2 in the MDB descriptor but it well and
> truly exceeds it.

MaxPoolSize of MDB descriptor indicates the ServerSession objects in the
pool. I havent seen
any issue with that. Can you give some more details (eg: log).

>
> Help please...
>
> Sivakumar, you've gotten the generic ra to work with WMQ6 with jndi
> provider integration. Have you done it with javabean? and if not, why?
> Is there some trap that i'm walking into at this stage?

There are two issues which we faced which may be related.

1. RMPolicy value: This need to be OnePerManagedConnection for MQ
series. Initial symptom
    was not receiving any messages in MDB and later found that it is
really a hang
    (https://genericjmsra.dev.java.net/issues/show_bug.cgi?id=5)

2. In some of the old linux kernels (Raja, do you remember the version)
we werent receiving
    the messages from MQ. It appeared to be an issue with the JDK used
by MQ series. So, we
    moved to a later version of the Kernel and it worked. Really, only
one machine had this issue.
    Long back, I had got the MDB working in my 2.4.18-14 kernel infact
with MQ series 5.3 itself.

Please switch on finest logging for genericjmsra and send the results.

- Binod.

>
> thanks in advanced
>
>------------------------------------------------------------------------
>
><?xml version="1.0" encoding="UTF-8"?>
><!DOCTYPE sun-ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Application Server 8.1 EJB 2.1//EN" "http://www.sun.com/software/appserver/dtds/sun-ejb-jar_2_1-1.dtd">
>
><sun-ejb-jar>
> <enterprise-beans>
> <name>OfInterestQueryMessageBeanJAR</name>
> <ejb>
> <ejb-name>OfInterestQueryMessageBean</ejb-name>
> <jndi-name>jms/SampleQueue</jndi-name>
> <resource-ref>
> <res-ref-name>jms/QCFactory</res-ref-name>
> <jndi-name>jms/QCFactory</jndi-name>
> <default-resource-principal>
> <name>guest</name>
> <password>guest</password>
> </default-resource-principal>
> </resource-ref>
> <resource-env-ref>
> <resource-env-ref-name>
> jms/clientQueue
> </resource-env-ref-name>
> <jndi-name>jms/ReceiverQueue</jndi-name>
> </resource-env-ref>
> <mdb-connection-factory>
> <jndi-name>jms/QCFactory</jndi-name>
> </mdb-connection-factory>
> <mdb-resource-adapter>
> <resource-adapter-mid>genericra</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>
> BaseQueueName=TIM.TEST.WRITE,TargetClient=1
> </activation-config-property-value>
> </activation-config-property>
>
> <!--
> <activation-config-property>
> <activation-config-property-name>SubscriptionDurability</activation-config-property-name>
> <activation-config-property-value>Durable</activation-config-property-value>
> </activation-config-property>
> <activation-config-property>
> <activation-config-property-name>SubscriptionName</activation-config-property-name>
> <activation-config-property-value>TestSubscription</activation-config-property-value>
> </activation-config-property>
> <activation-config-property>
> <activation-config-property-name>ClientID</activation-config-property-name>
> <activation-config-property-value>uniq-3</activation-config-property-value>
> </activation-config-property>
> -->
> <activation-config-property>
> <activation-config-property-name>
> MaxPoolSize
> </activation-config-property-name>
> <activation-config-property-value>
> 2
> </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-property>
> <activation-config-property-name>DeadMessageDestinationClassName</activation-config-property-name>
> <activation-config-property-value>com.sun.messaging.Queue</activation-config-property-value>
> </activation-config-property>
> <activation-config-property>
> <activation-config-property-name>DeadMessageDestinationProperties</activation-config-property-name>
> <activation-config-property-value>imqDestinationName=DMDtest</activation-config-property-value>
> </activation-config-property>
> -->
> </activation-config>
> </mdb-resource-adapter>
> </ejb>
>
> </enterprise-beans>
></sun-ejb-jar>
>
>
>
>------------------------------------------------------------------------
>
><?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>
> <display-name>OfInterestQueryMessageBeanJAR</display-name>
> <enterprise-beans>
> <message-driven>
> <display-name>OfInterestQueryMessageBean</display-name>
> <ejb-name>OfInterestQueryMessageBean</ejb-name>
> <ejb-class>
> au.gov.wa.police.webservice.ofinterestquery.OfInterestQueryMessageBean
> </ejb-class>
> <transaction-type>Container</transaction-type>
> <message-driven-destination>
> <destination-type>javax.jms.Queue</destination-type>
> </message-driven-destination>
> <resource-ref>
> <res-ref-name>jms/QCFactory</res-ref-name>
> <res-type>javax.jms.QueueConnectionFactory</res-type>
> <res-auth>Container</res-auth>
> <res-sharing-scope>Shareable</res-sharing-scope>
> </resource-ref>
> <resource-env-ref>
> <resource-env-ref-name>
> jms/clientQueue
> </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>
> <method>
> <ejb-name>OfInterestQueryMessageBean</ejb-name>
> <method-name>onMessage</method-name>
> <method-params>
> <method-param>javax.jms.Message</method-param>
> </method-params>
> </method>
> <trans-attribute>Required</trans-attribute>
> </container-transaction>
> </assembly-descriptor>
></ejb-jar>
>
>
>
>
>------------------------------------------------------------------------
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: users-unsubscribe_at_genericjmsra.dev.java.net
>For additional commands, e-mail: users-help_at_genericjmsra.dev.java.net
>
>