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 IndexIBM MQ Java / JMSWAS message processing - messages lost

Post new topicReply to topic
WAS message processing - messages lost View previous topic :: View next topic
Author Message
9A5YY
PostPosted: Thu Dec 22, 2016 1:12 am Post subject: WAS message processing - messages lost Reply with quote

Voyager

Joined: 27 Sep 2005
Posts: 85
Location: Croatia

Bellow is WAS application log where you can see what happens when message arrives to the queue and after that message is lost.
This happens some days for some messages not every day . Messages arrive from z/OS queue managers V7.1.0
(CSQ3111I +P1Q1 CSQYSCMD - EARLY PROCESSING PROGRAM IS V7.1.0 006-023 )

to the local queue which is located at Linux qmgr V7.1.0.7. Messages at qmgr are processed by Linux WAS 8559.

Code:
[21.12.16. 14:30:42:985 CET] 00000157 SibMessage    W   [:] CWSJY0003W: JMSCC0110: An exception '
                       Message : java.lang.NullPointerException
                         Class : class java.lang.NullPointerException
                         Stack : com.ibm.msg.client.wmq.common.internal.WMQUtils.getCharacterSetString(WMQUtils.java:517)
                               : com.ibm.msg.client.wmq.common.internal.messages.WMQReceiveMarshal.addBodyToProviderMessage(WMQReceiveMarshal.java:523)
                               : com.ibm.msg.client.wmq.common.internal.messages.WMQReceiveMarshal.createProviderMessage(WMQReceiveMarshal.java:475)
                               : com.ibm.msg.client.wmq.common.internal.messages.WMQReceiveMarshal.exportProviderMessage(WMQReceiveMarshal.java:628)
                               : com.ibm.msg.client.wmq.internal.WMQConsumerShadow.getMsg(WMQConsumerShadow.java:1514)
                               : com.ibm.msg.client.wmq.internal.WMQConsumerShadow.getMsg(WMQConsumerShadow.java:1381)
                               : com.ibm.msg.client.wmq.internal.WMQSyncConsumerShadow.receive(WMQSyncConsumerShadow.java:367)
                               : com.ibm.msg.client.wmq.internal.WMQSession.loadMessageReference(WMQSession.java:1309)
                               : com.ibm.msg.client.jms.internal.JmsSessionImpl.consume(JmsSessionImpl.java:3268)
                               : com.ibm.msg.client.jms.internal.JmsSessionImpl.run(JmsSessionImpl.java:2903)
                               : com.ibm.mq.jms.MQSession.run(MQSession.java:958)
                               : com.ibm.mq.connector.inbound.ASFWorkImpl.doDelivery(ASFWorkImpl.java:97)
                               : com.ibm.mq.connector.inbound.AbstractWorkImpl.run(AbstractWorkImpl.java:235)
                               : com.ibm.ejs.j2c.work.WorkProxy$RunWork.run(WorkProxy.java:281)
                               : java.security.AccessController.doPrivileged(AccessController.java:422)
                               : javax.security.auth.Subject.doAs(Subject.java:494)
                               : com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:133)
                               : com.ibm.ejs.j2c.work.WorkProxy$RunWork.run(WorkProxy.java:284)
                               : com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:63)
                               : com.ibm.ejs.j2c.work.WorkProxy.run(WorkProxy.java:666)
                               : com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1881)
' was caught while processing a message for delivery to a message driven bean.
[21.12.16. 14:30:42:986 CET] 00000157 SibMessage    W   [:] CWSJY0003W: MQJCA4004: Message delivery to an MDB 'Name-gui-mdb#Name-gui-mdb-ejb.jar#queue_name($Proxy@1e4b6644)' failed with exception: 'null'.

We have following WAS, JAVA and MQ version at Linux servers.

Fix Pack 7.1.0.7 for WebSphere MQ on Linux X86-64


IBM Webspehere Application Server V8.5.5.9, x86-64 Architecture


IBM Webspehere SDK Java V7.1.3.30, x86-64 Architecture


The same problem happened with lower Fix Packs of JAVA, MQ and WAS.
Does anyone know what to do here to solve this problem?
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Thu Dec 22, 2016 2:54 am Post subject: Reply with quote

Grand Poobah

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

You did not specify what the transactional settings where for the MDB in WAS.
You should have the MDB declare requires new for the method.
If your messages are persistent there should be no problem and open a PMR.
If your messages are non persistent, it really depends on qualitiy of service settings. Have some fun
_________________
MQ & Broker admin
Back to top
View user's profile Send private message Send e-mail
9A5YY
PostPosted: Thu Dec 22, 2016 3:22 am Post subject: Reply with quote

Voyager

Joined: 27 Sep 2005
Posts: 85
Location: Croatia

Yes, persistent messages are processed by WAS. I intend to open PMR soon.
Back to top
View user's profile Send private message
fjb_saper
PostPosted: Thu Dec 22, 2016 5:11 am Post subject: Reply with quote

Grand Poobah

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

9A5YY wrote:
Yes, persistent messages are processed by WAS. I intend to open PMR soon.

Remember if your MDB's transaction settings are set to NOT REQUIRED, you shot yourself in the foot and the system is working as designed....
In other words you need to catch any exception and throw the corresponding MDBException in the catch block so that the transaction gets rolled back...
_________________
MQ & Broker admin


Last edited by fjb_saper on Wed Aug 09, 2017 8:47 pm; edited 1 time in total
Back to top
View user's profile Send private message Send e-mail
quijote
PostPosted: Wed Aug 09, 2017 8:34 am Post subject: Reply with quote

Newbie

Joined: 09 Aug 2017
Posts: 1

I would be very interested to find out if you found a solution or a workaround to this NullPointerException thrown in WMQUtils.getCharacterSetString.

Have you tried a newer version of WebSphere or a newer JVM?
Back to top
View user's profile Send private message
Display posts from previous:
Post new topicReply to topic Page 1 of 1

MQSeries.net Forum IndexIBM MQ Java / JMSWAS message processing - messages lost
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.