ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » IBM MQ Java / JMS » MQ v6 and WebLogic v8.1 Integration

Post new topic  Reply to topic
 MQ v6 and WebLogic v8.1 Integration « View previous topic :: View next topic » 
Author Message
gath
PostPosted: Thu Jun 03, 2010 7:57 am    Post subject: MQ v6 and WebLogic v8.1 Integration Reply with quote

Novice

Joined: 17 Mar 2010
Posts: 10

Hello,

We are trying to congigure a weblogic bridge which will talk to MQ server.
We are able to get messages from MQ to WebLogic, however we experience problems when putting a message from WebLogic to MQ.


MQ Configuration

1. Created MQ QueueManager and Queues.
MQ Server Version 6 on LINUX

MQ host: mqjavadev
MQ server javadev
Listerning port: 1414

2 Queues one:
MQ.RCV.BRIDGE
MQ.SND.BRIDGE

2. Created ConnectionFactory and Destinations.

JNDI file created on the MQ server with JMSAdmin
using the following:

def xaqcf(WLS_MQ_QCF) hostname(mqjavadev) port(1414) channel(SYSTEM.DEF.SVRCONN) transport(CLIENT) qmgr(javadev)
def q(MQ.RCV.BRIDGE) queue(MQ.RCV.BRIDGE) qmgr(javadev)
def q(MQ.SND.BRIDGE) queue(MQ.SND.BRIDGE) qmgr(javadev)

3. Given required access to the users.
currently client connection is in MQM group just to simplify things

Weblogic configuration

1. Created JMS Server, Store, topics, connection factory.

2. Created JMS bridge destinations with
a. Adapter jndi name - eis.jms.WLSConnectionFactoryJNDIXA
b. Initial context factory for weblogic queue destination
weblogic.jndi.WLInitialContextFactory
c. Initial context factory for MQ queue destination
com.sun.jndi.fscontext.RefFSContextFactory
d. Connection url for weblogic queue destination
t3://localhost:7001
e. Connection url for MQ queue destination
file:/C:/JNDI-Directory

3. Have all required MQ jar files in classpath -
a. com.ibm.mq.jar
b. com.ibm.mqjms.jar
c. dhbcore.jar
d. fscontext.jar
e. providerutil.jar

4. Created two bridges with source as Weblogic topic and target destinations as MQ queue and vice versa.

a. First bridge works perfectly fine when I am receiving messages from MQ and putting on topic on weblogic.

b. Second bridge gives following error somehow when I am trying to put messages on MQ q -

<03-Jun-2010 12:44:38 o'clock BST> <Info> <MessagingBridge> <BEA-200030> <Bridge "MONITOR_TO_MQ_BRIDGE" is configured to work in "Exactly-once" mode, and it is actua
lly working in "Exactly-once" mode.>
<03-Jun-2010 12:44:38 o'clock BST> <Info> <MessagingBridge> <BEA-200028> <The bridge "MONITOR_TO_MQ_BRIDGE" has started transferring messages.>
<03-Jun-2010 12:44:42 o'clock BST> <Debug> <MessagingBridge> <BEA-200006> <Messaging bridge debugging RUNTIME! Bridge: MONITOR_TO_MQ_BRIDGE (onMessage()) received me
ssage:
JMS Message Class: TextMessage
JMSMessageID: ID:P<847863.1275565482103.0>
JMSCorrelationID: null
JMSDeliveryMode: PERSISTENT
JMSDestination: ALL_CHANNEL
JMSExpiration: 0
JMSPriority: 4
JMSRedelivered: false
JMSReplyTo: null
JMSTimestamp: 1275565482103 (Thu Jun 03 12:44:42 BST 2010)
JMSType: null
Transaction Id: null
TEST
.>
<03-Jun-2010 12:44:42 o'clock BST> <Debug> <MessagingBridge> <BEA-200006> <Messaging bridge debugging RUNTIME! Bridge: MONITOR_TO_MQ_BRIDGE (onMessage()) associated
msg ID:P<847863.1275565482103.0> with transaction BEA1-0001E0F772BE204953ED.>
<03-Jun-2010 12:44:42 o'clock BST> <Error> <JTA> <BEA-110412> <Xid=BEA1-0001E0F772BE204953ED(8709113),Status=Rolled back. [Reason=Unknown],HeuristicErrorCode=XA_HEUR
HAZ,numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=0,seconds left=30,activeThread=Thread[ExecuteThread: '14' for queue: 'weblogic.kernel.Default',5,Th
read Group for Queue: 'weblogic.kernel.Default'],XAServerResourceInfo[JMS_CONTROL_JMS_PERSISTENT_STORE]=(ServerResourceInfo[JMS_CONTROL_JMS_PERSISTENT_STORE]=(state=
rolledback,assigned=mybus_control_managed),xar=JMS_CONTROL_JMS_PERSISTENT_STORE,re-Registered = false),XAServerResourceInfo[mybusdomain.mybus_control_managed.W
eblogic Messaging Bridge Adapter (XA)_eis/jms/WLSConnectionFactoryJNDIXA]=(ServerResourceInfo[mybusdomain.mybus_control_managed.Weblogic Messaging Bridge Adapter
(XA)_eis/jms/WLSConnectionFactoryJNDIXA]=(state=rolledback,assigned=mybus_control_managed),xar=com.ibm.mq.jmqi.JmqiXAResource@92fe09,re-Registered = false),SCInfo
[mybusdomain+mybus_control_managed]=(state=rolledback),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=mybus_control_managed+10.20
4.30.101:10110+mybusdomain+t3+, XAResources={},NonXAResources={})],CoordinatorURL=mybus_control_managed+10.204.30.101:10110+mybusdomain+t3+) completed heuristi
cally: (mybusdomain.mybus_control_managed.Weblogic Messaging Bridge Adapter (XA)_eis/jms/WLSConnectionFactoryJNDIXA, HeuristicHazard, (javax.transaction.xa.XAExc
eption: The method 'xa_rollback' has failed with errorCode '100'.)) >
<03-Jun-2010 12:44:42 o'clock BST> <Warning> <MessagingBridge> <BEA-200026> <Bridge "MONITOR_TO_MQ_BRIDGE" encountered some problems in one of its adapters or underl
ying systems. It stopped transferring messages and will try to reconnect to the adapters shortly. (The exception caught was java.lang.Exception: javax.resource.Resou
rceException: Error sending message
at weblogic.jms.adapter.JMSBaseConnection.throwResourceException(JMSBaseConnection.java:1339)
at weblogic.jms.adapter.JMSBaseConnection.send(JMSBaseConnection.java:654)
at weblogic.jms.adapter.JMSConnectionHandle.send(JMSConnectionHandle.java:144)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at weblogic.connector.common.internal.ConnectionWrapper.invoke(ConnectionWrapper.java:149)
at $Proxy9.send(Unknown Source)
at weblogic.jms.bridge.internal.MessagingBridge.onMessageInternal(MessagingBridge.java:1256)
at weblogic.jms.bridge.internal.MessagingBridge.onMessage(MessagingBridge.java:1179)
at weblogic.jms.adapter.JMSBaseConnection$27.run(JMSBaseConnection.java:1943)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
at weblogic.security.service.SecurityManager.contact admin(SecurityManager.java:144)
at weblogic.jms.adapter.JMSBaseConnection.onMessage(JMSBaseConnection.java:1939)
at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:2678)
at weblogic.jms.client.JMSSession.execute(JMSSession.java:2598)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
-------------- Linked Exception ------------
javax.resource.ResourceException: Error creating producer or sending message
at weblogic.jms.adapter.JMSBaseConnection.throwResourceException(JMSBaseConnection.java:1339)
at weblogic.jms.adapter.JMSBaseConnection.sendInternal(JMSBaseConnection.java:719)
at weblogic.jms.adapter.JMSBaseConnection.access$200(JMSBaseConnection.java:80)
at weblogic.jms.adapter.JMSBaseConnection$6.run(JMSBaseConnection.java:647)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
at weblogic.security.service.SecurityManager.contact admin(SecurityManager.java:144)
at weblogic.jms.adapter.JMSBaseConnection.send(JMSBaseConnection.java:644)
at weblogic.jms.adapter.JMSConnectionHandle.send(JMSConnectionHandle.java:144)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at weblogic.connector.common.internal.ConnectionWrapper.invoke(ConnectionWrapper.java:149)
at $Proxy9.send(Unknown Source)
at weblogic.jms.bridge.internal.MessagingBridge.onMessageInternal(MessagingBridge.java:1256)
at weblogic.jms.bridge.internal.MessagingBridge.onMessage(MessagingBridge.java:1179)
at weblogic.jms.adapter.JMSBaseConnection$27.run(JMSBaseConnection.java:1943)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
at weblogic.security.service.SecurityManager.contact admin(SecurityManager.java:144)
at weblogic.jms.adapter.JMSBaseConnection.onMessage(JMSBaseConnection.java:1939)
at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:2678)
at weblogic.jms.client.JMSSession.execute(JMSSession.java:2598)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
.)>
<03-Jun-2010 12:44:42 o'clock BST> <Info> <MessagingBridge> <BEA-200020> <Bridge "MONITOR_TO_MQ_BRIDGE" is stopped.>
<03-Jun-2010 12:44:52 o'clock BST> <Info> <MessagingBridge> <BEA-200033> <Bridge "MONITOR_TO_MQ_BRIDGE" is obtaining connections to the two adapters.>
<03-Jun-2010 12:44:52 o'clock BST> <Debug> <MessagingBridge> <BEA-200006> <Messaging bridge debugging RUNTIME! Bridge MONITOR_TO_MQ_BRIDGE Getting source connection.

Verified that MQ server is actively running.
Looked at MQ trace files, seems like it allows the bridge is able to reach to MQ server but not able to make connection with QueuConnectionFactory/Queues.


MQ server and listener are running.
Back to top
View user's profile Send private message
Vitor
PostPosted: Thu Jun 03, 2010 8:47 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

gath wrote:
The method 'xa_rollback' has failed with errorCode '100'


Looks like the XA had a problem to me, based on the error....
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Thu Jun 03, 2010 11:36 am    Post subject: Reply with quote

Grand High Poobah

Joined: 18 Nov 2003
Posts: 20756
Location: LI,NY

The trace says:
Quote:
javax.resource.ResourceException: Error creating producer or sending message

However your trace does not show an error code or linked exception code (completion code, reason code).
Try finding the reason code. It will tell us a lot more then reading your current post does.
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
gath
PostPosted: Thu Jun 03, 2010 11:57 am    Post subject: MQ v6 and WebLogic v8.1 Integration Reply with quote

Novice

Joined: 17 Mar 2010
Posts: 10

OK thanks for your reply, will test with non XA to see if that was the problem, however we do need XA transactions...

Will also request feedback from Oracle....

Back soon.
Back to top
View user's profile Send private message
gath
PostPosted: Thu Jun 03, 2010 12:13 pm    Post subject: MQ v6 and WebLogic v8.1 Integration Reply with quote

Novice

Joined: 17 Mar 2010
Posts: 10

fjb_saper,

WebLogic application did not return any MQ error codes, just BEA...
Back to top
View user's profile Send private message
Vitor
PostPosted: Thu Jun 03, 2010 12:34 pm    Post subject: Re: MQ v6 and WebLogic v8.1 Integration Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

gath wrote:

WebLogic application did not return any MQ error codes, just BEA...


Then how did you determine it's an MQ issue?
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
Blomman
PostPosted: Wed Jun 16, 2010 4:40 am    Post subject: Reply with quote

Master

Joined: 31 Oct 2006
Posts: 230

Running WLS and WMQ on same physical server?

If not XA is not supported unless you have access to jar files for"extended transactional client"

Then as you specified your .bindings file with "transport(CLIENT)" then im courios if you are remote client? Otherwise binding mode should be used.

On more thing, if you are on the same physical server then the uid running your wls instance should be in the gid that your WMQ uid is having....
This becuse XA is based on shared memory....

//Blomman
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » IBM MQ Java / JMS » MQ v6 and WebLogic v8.1 Integration
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.