users@genericjmsra.java.net

Re: MDB, WMQ, SJSAS, Generic RA

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

J. Seah wrote:

> Hi Binod,
>
> Attached is my server.log
>
> My current configuration is SJSAS8.1 sitting on my winXP dev box
> running JDK1.5 MQ Series 5.3 is sitting on a Solaris 8 box which I am
> not using JMS Admin at all as I am using Javabean as the provider
> integration.

Can you also confirm that you have set RMPolicy correctly?

- Binod.

>
> Thanks for the help so far Binod
>
> Jonathon
>
>
>> From: Binod <Binod.Pg_at_Sun.COM>
>> Reply-To: users_at_genericjmsra.dev.java.net
>> To: users_at_genericjmsra.dev.java.net
>> CC: Raja Perumal <Raja.Perumal_at_Sun.COM>
>> Subject: Re: MDB, WMQ, SJSAS, Generic RA
>> 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
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe_at_genericjmsra.dev.java.net
>> For additional commands, e-mail: users-help_at_genericjmsra.dev.java.net
>>
>
>------------------------------------------------------------------------
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: users-unsubscribe_at_genericjmsra.dev.java.net
>For additional commands, e-mail: users-help_at_genericjmsra.dev.java.net
>
>