Author |
Message
|
henrikbec |
Posted: Sun Jul 08, 2007 11:31 pm Post subject: Websphere MQ 6.0 throws MQJMS1016 |
|
|
Newbie
Joined: 08 Jul 2007 Posts: 2
|
Hi
We have setup a Websphere MQ integration where we have a weblogic server as the client.
The MQ setup is a clean MQ installation no WAS is installed.
Here are the MQ information
OS: Windows 2003 R2 Entreprise Edition SP1
MQ:
Name: WebSphere MQ
Version: 6.0.2.1
CMVC level: p600-201-070323
BuildType: IKAP - (Production)
Here are the Weblogic server information
OS: Windows 2003 R2 Entreprise Edition SP1
weblogic:
Name: Weblogic ESB
VERSION: 9.2
JDK: jdk150_06
We have experience that the integration works fine. Until it becomes weekend and there are no activity between the weblogic server and the MQ.
That is when we get the message:
####<2007-07-09 07:53:45 CEST> <Notice> <StdErr> <b00011100938> <esbserver> <asyncDelivery30> <<WLS Kernel>> <> <> <1183960425832> <000000> <2007.07.09 07:53:45 MQJMS1016E an internal error has occurred. Please contact your system administrator. Detail: java.lang.NullPointerException>
####<2007-07-09 07:53:45 CEST> <Error> <ALSB Kernel> <b00011100938> <esbserver> <asyncDelivery30> <<anonymous>> <> <> <1183960425832> <BEA-380001> <Exception on TransportManagerImpl.sendMessageToService, com.bea.wli.sb.transports.TransportException: MQJMS1016: an internal error has occurred. Please contact your system administrator. Detail: java.lang.NullPointerException
com.bea.wli.sb.transports.TransportException: MQJMS1016: an internal error has occurred. Please contact your system administrator. Detail: java.lang.NullPointerException
at com.bea.wli.sb.transports.TransportException.newInstance(TransportException.java:146)
at com.bea.wli.sb.transports.jms.JmsOutboundMessageContext$SendAction.run(JmsOutboundMessageContext.java:845)
at com.bea.wli.sb.transports.jms.JmsOutboundMessageContext.send(JmsOutboundMessageContext.java:514)
at com.bea.wli.sb.transports.jms.JmsTransportProvider.sendMessageAsync(JmsTransportProvider.java:620)
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:585)
at com.bea.wli.sb.transports.Util$1.invoke(Util.java:65)
at $Proxy45.sendMessageAsync(Unknown Source)
at com.bea.wli.sb.transports.LoadBalanceFailoverListener.sendMessageAsync(LoadBalanceFailoverListener.java:137)
at com.bea.wli.sb.transports.TransportManagerImpl.sendMessageToService(TransportManagerImpl.java:487)
at com.bea.wli.sb.transports.TransportManagerImpl.sendMessageAsync(TransportManagerImpl.java:354)
at com.bea.wli.sb.pipeline.PipelineContextImpl.doDispatch(PipelineContextImpl.java:559)
at com.bea.wli.sb.pipeline.PipelineContextImpl.dispatch(PipelineContextImpl.java:488)
at stages.routing.runtime.RouteRuntimeStep.processMessage(RouteRuntimeStep.java:127)
at com.bea.wli.sb.stages.StageMetadataImpl$WrapperRuntimeStep.processMessage(StageMetadataImpl.java:319)
at com.bea.wli.sb.pipeline.RouteNode.doRequest(RouteNode.java:108)
at com.bea.wli.sb.pipeline.Node.processMessage(Node.java:6
at com.bea.wli.sb.pipeline.PipelineContextImpl.execute(PipelineContextImpl.java:834)
at com.bea.wli.sb.pipeline.Router.processMessage(Router.java:194)
at com.bea.wli.sb.pipeline.MessageProcessor.processRequest(MessageProcessor.java:75)
at com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:669)
at com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:668)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
at weblogic.security.service.SecurityManager.contact admin(SecurityManager.java:147)
at com.bea.wli.sb.pipeline.RouterManager.processMessage(RouterManager.java:666)
at com.bea.wli.sb.transports.TransportManagerImpl.receiveMessage(TransportManagerImpl.java:304)
at com.bea.wli.sb.transports.jms.JmsInboundMDB.onMessage(JmsInboundMDB.java:108)
at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:429)
at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:335)
at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:291)
at com.ibm.mq.jms.MQMessageConsumer.receiveAsync(MQMessageConsumer.java:2804)
at com.ibm.mq.jms.contact admin.run(contact admin.java:406)
at java.lang.Thread.run(Thread.java:595)
At the time we get this error we also do a thread dump to find the asyncDelivery30 and we can see what happens:
"asyncDelivery30" RUNNABLE native
java.net.SocketInputStream.socketRead0(Native Method)
java.net.SocketInputStream.read(SocketInputStream.java:129)
java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
java.io.BufferedInputStream.read(BufferedInputStream.java:235)
java.io.DataInputStream.readInt(DataInputStream.java:353)
com.ibm.mq.MQInternalCommunications.timedReadInt(MQInternalCommunications.java:2698)
com.ibm.mq.MQInternalCommunications.receiveBytesFaster(MQInternalCommunications.java:2796)
com.ibm.mq.MQInternalCommunications.receive(MQInternalCommunications.java:1149)
com.ibm.mq.MQSESSIONClient.lowLevelComms(MQSESSIONClient.java:2802)
com.ibm.mq.MQSESSIONClient.MQGET(MQSESSIONClient.java:1833)
com.ibm.mq.MQQueue.getMsg2Int(MQQueue.java:1209)
com.ibm.mq.MQQueue.getMsg2(MQQueue.java:1066)
com.ibm.mq.jms.MQMessageConsumer.getMessage(MQMessageConsumer.java:3194)
com.ibm.mq.jms.MQMessageConsumer.receiveAsync(MQMessageConsumer.java:2773)
com.ibm.mq.jms.contact admin.run(contact admin.java:406)
java.lang.Thread.run(Thread.java:595)
The message we get from the MQ is this :
09-07-2007 07:54:05 - Process(7772.406) User(LETMQTESTUser) Program(amqrmppa.exe)
AMQ9208: Error on receive from host b00011100938 (10.11.64.5).
EXPLANATION:
An error occurred receiving data from b00011100938 (10.11.64.5) over TCP/IP.
This may be due to a communications failure.
ACTION:
The return code from the TCP/IP (recv) call was 10054 (X'2746'). Record these
values and tell the systems administrator.
If anyone have some input/help concerning this problem. That would really be great |
|
Back to top |
|
 |
Vitor |
Posted: Sun Jul 08, 2007 11:53 pm Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
You've got a network issue. If you search the forum for that TCP code 10054 that the channel threw, you'll see a number of discussions on the subject which will give you some places to look.
For the record, a 10054 is a "Connection reset by host" error but that doesn't tell you much. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
fjb_saper |
Posted: Mon Jul 09, 2007 2:52 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
Vitor wrote: |
You've got a network issue. If you search the forum for that TCP code 10054 that the channel threw, you'll see a number of discussions on the subject which will give you some places to look.
For the record, a 10054 is a "Connection reset by host" error but that doesn't tell you much. |
As a pointer: Do you have a firewall timeout that is less than the channel heartbeat? Or an automatic disconnect after some period of inactivity?
Last but not least... how does your program handle the errors and if you can access it please print the linked error on a JMSException...(although here you'd probably get a 2009)
Enjoy  _________________ MQ & Broker admin |
|
Back to top |
|
 |
henrikbec |
Posted: Wed Jul 11, 2007 10:39 pm Post subject: Network test |
|
|
Newbie
Joined: 08 Jul 2007 Posts: 2
|
Hi
After reading the different reply's I been doing some testing and doing some network trafic monotoring.
I also consluted someone who knows our network setup. And I can confirm that that the weblogic server and the MQ is not behind a firewall.
Also It looks like messages are still send and recieved by the MQ. But it apperently throws a error code.
The message is MGGET_REPLY [RC=2033] |
|
Back to top |
|
 |
Vitor |
Posted: Thu Jul 12, 2007 12:50 am Post subject: Re: Network test |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
henrikbec wrote: |
The message is MGGET_REPLY [RC=2033] |
Ok, 2033 is MQRC_NO_MSG_AVAILABLE and means that no message matching the get criteria was available on the queue before the MQGET timed out. If you're expecting a reply, it wasn't sent or was sent with the wrong identifying characteristics.
If you're just reading messages without any selection, it means you're finished!  _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
|