|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
MQ v6 and WebLogic v8.1 Integration |
« View previous topic :: View next topic » |
Author |
Message
|
gath |
Posted: Thu Jun 03, 2010 7:57 am Post subject: MQ v6 and WebLogic v8.1 Integration |
|
|
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 |
|
 |
Vitor |
Posted: Thu Jun 03, 2010 8:47 am Post subject: |
|
|
 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 |
|
 |
fjb_saper |
Posted: Thu Jun 03, 2010 11:36 am Post subject: |
|
|
 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 |
|
 |
gath |
Posted: Thu Jun 03, 2010 11:57 am Post subject: MQ v6 and WebLogic v8.1 Integration |
|
|
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 |
|
 |
gath |
Posted: Thu Jun 03, 2010 12:13 pm Post subject: MQ v6 and WebLogic v8.1 Integration |
|
|
Novice
Joined: 17 Mar 2010 Posts: 10
|
fjb_saper,
WebLogic application did not return any MQ error codes, just BEA... |
|
Back to top |
|
 |
Vitor |
Posted: Thu Jun 03, 2010 12:34 pm Post subject: Re: MQ v6 and WebLogic v8.1 Integration |
|
|
 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 |
|
 |
Blomman |
Posted: Wed Jun 16, 2010 4:40 am Post subject: |
|
|
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 |
|
 |
|
|
 |
|
Page 1 of 1 |
|
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
|
|
|
|