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 Installation/Configuration Support » WMQ MQConnectionBrowser throwing NPE on JBoss 5.1

Post new topic  Reply to topic
 WMQ MQConnectionBrowser throwing NPE on JBoss 5.1 « View previous topic :: View next topic » 
Author Message
no_exit
PostPosted: Wed Oct 06, 2010 12:35 pm    Post subject: WMQ MQConnectionBrowser throwing NPE on JBoss 5.1 Reply with quote

Newbie

Joined: 06 Oct 2010
Posts: 2

I have an interesting issue where the MQConnectionBrowser.pubSubSetup method is throwing an NPE when a inbound Topic

is being initialized.

The environment is WMQ rar 6.02 running on JBoss 5.1 in an AIX

This NPE is not thrown using the same configuration, except on a Windows XP machine.

The application had five queues and one topic. THe queues are fine. However when the topic is initialized, things go

wrong.

Here is the stacktrace with a root cause of NPE in pubSubSetup():

Code:
010-10-06 11:10:05,184 DEBUG [org.jboss.resource.connectionmanager.CachedConnectionInterceptor] (main) start called in

CachedConnectionInterceptor
2010-10-06 11:10:05,184 DEBUG [org.jboss.system.ServiceController] (main) starting service

jboss.j2ee:service=EJB,plugin=invoker,binding=message-inflow-driven-bean,jndiName=local/CommonTopicReceiver@379393693
2010-10-06 11:10:05,184 DEBUG [org.jboss.ejb.plugins.inflow.JBossMessageEndpointFactory] (main) Starting

jboss.j2ee:service=EJB,plugin=invoker,binding=message-inflow-driven-bean,jndiName=local/CommonTopicReceiver@379393693
2010-10-06 11:10:05,307 DEBUG [org.jboss.ejb.plugins.inflow.JBossMessageEndpointFactory] (main) Starting failed

jboss.j2ee:service=EJB,plugin=invoker,binding=message-inflow-driven-bean,jndiName=local/CommonTopicReceiver@379393693
org.jboss.deployment.DeploymentException: Endpoint activation failed

ra=jboss.jca:service=RARDeployment,name='wmq.jmsra.rar'

activationSpec=javax.jms.Topic:jms/ExtCacheTopic@WMQC05@quesvc848
    at org.jboss.deployment.DeploymentException.rethrowAsDeploymentException(DeploymentException.java:52)
    at org.jboss.ejb.plugins.inflow.JBossMessageEndpointFactory.activate(JBossMessageEndpointFactory.java:529)
Caused by:
java.lang.NullPointerException
   at com.ibm.mq.jms.MQConnectionBrowser.pubSubSetup(MQConnectionBrowser.java:410)
   at com.ibm.mq.jms.MQConnectionBrowser.MQConnectionBrowserInit(MQConnectionBrowser.java:298)
   at com.ibm.mq.jms.MQConnectionBrowser.<init>(MQConnectionBrowser.java:132)
   at com.ibm.mq.jms.MQConnection.createConnectionBrowser(MQConnection.java:4070)
   at com.ibm.mq.jms.MQConnectionConsumer.<init>(MQConnectionConsumer.java:459)
   at com.ibm.mq.jms.MQConnectionConsumer.<init>(MQConnectionConsumer.java:364)
   at com.ibm.mq.jms.MQConnection.createConnectionConsumer(MQConnection.java:3626)
   at com.ibm.mq.jms.MQConnection.createConnectionConsumer(MQConnection.java:3554)
   at

com.ibm.mq.connector.inbound.MessageEndpointDeployment.createConnectionConsumer(MessageEndpointDeployment.java:288)
   at com.ibm.mq.connector.inbound.MessageEndpointDeployment.start(MessageEndpointDeployment.java:218)
   at com.ibm.mq.connector.inbound.MessageEndpointDeployment.<init>(MessageEndpointDeployment.java:188)
   at com.ibm.mq.connector.ResourceAdapterImpl.endpointActivation(ResourceAdapterImpl.java:379)
   at org.jboss.resource.deployers.RARDeployment.endpointActivation(RARDeployment.java:330)
   at org.jboss.resource.deployers.RARDeployment.internalInvoke(RARDeployment.java:284)
   at org.jboss.system.ServiceDynamicMBeanSupport.invoke(ServiceDynamicMBeanSupport.java:156)
   at org.jboss.mx.server.RawDynamicInvoker.invoke(RawDynamicInvoker.java:164)
   at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:668)
   at org.jboss.ejb.plugins.inflow.JBossMessageEndpointFactory.activate(JBossMessageEndpointFactory.java:524)


I have enabled WMQ tracing and also set the DMQJMS_TRACE_LEVEL to base. There is nothing in any of the log or trace

files that would indicate the cause of the NPE.

I know that one of you MQ experts must have some sort of idea what could be causing this or where I could go for

additional assistance.

If any additional information is needed, please feel free to ask. Like I said, I have a lot of information in log and trace files.


Last edited by no_exit on Wed Oct 06, 2010 1:28 pm; edited 1 time in total
Back to top
View user's profile Send private message
Vitor
PostPosted: Wed Oct 06, 2010 12:39 pm    Post subject: Re: WMQ MQConnectionBrowser throwing NPE on JBoss 5.1 Reply with quote

Grand High Poobah

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

no_exit wrote:
I know that one of you MQ experts must have some sort of idea what could be causing this or where I could go for additional assistance.


2 tips:

1) If you're posting code, log or trace use "code" tags; makes it much eaiser to read.
2) Typically there's a linked exception out of the WMQ layer that contains the WMQ reason code. This is usually more illuminating than the generic error.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
no_exit
PostPosted: Wed Oct 06, 2010 1:54 pm    Post subject: Reply with quote

Newbie

Joined: 06 Oct 2010
Posts: 2

Thanks for the tips. I cleanup up the first post.

In regards to linked exception, in the mqjms.trc file, there are a few items prior to the exception being displayed in the server log:
Code:


[05/10/2010 16:03:52:75 CDT] Thread: Cleanup(WMQC05:quesvc848:1922), Object: com.ibm.mq.MQOD@fc00fc0 ==> MQOD constructor() entry
[05/10/2010 16:03:52:75 CDT] Thread: statusMgrConnection0, Object: com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2033 ==> MQException constructor(cc, rc, source)() entry
[05/10/2010 16:03:52:75 CDT] Thread: Cleanup(WMQC05:quesvc848:1922), Object: com.ibm.mq.MQOD@fc00fc0 @(#) javabase/com/ibm/mq/MQOD.java, java, j600, j600-208-090730 1.28.1.6 07/11/15 14:14:06
[05/10/2010 16:03:52:75 CDT] Thread: statusMgrConnection0, Object: com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2033 @(#)  javabase/com/ibm/mq/MQException.java, java, j600, j600-209-100121 1.83.1.10 09/10/06 12:30:55
[05/10/2010 16:03:52:75 CDT] Thread: Cleanup(WMQC05:quesvc848:1922), Object: com.ibm.mq.MQOD@fc00fc0 <== MQOD constructor() exit
[05/10/2010 16:03:52:75 CDT] Thread: statusMgrConnection0, Object: com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2033 cc     = 2
[05/10/2010 16:03:52:75 CDT] Thread: Cleanup(WMQC05:quesvc848:1922), Object: com.ibm.mq.MQSPIQueue@506c506c ==> MQManagedObject constructor() entry
[05/10/2010 16:03:52:75 CDT] Thread: statusMgrConnection0, Object: com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2033 rc     = 2033
[05/10/2010 16:03:52:75 CDT] Thread: Cleanup(WMQC05:quesvc848:1922), Object: com.ibm.mq.MQSPIQueue@506c506c @(#)  javabase/com/ibm/mq/MQManagedObject.java, java, j600, j600-208-090730 1.32.1.2 07/11/15 14:14:00
[05/10/2010 16:03:52:75 CDT] Thread: statusMgrConnection0, Object: com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2033 source = com.ibm.mq.MQSPIQueue@3e263e26
[05/10/2010 16:03:52:75 CDT] Thread: Cleanup(WMQC05:quesvc848:1922), Object: com.ibm.mq.MQSPIQueue@506c506c <== MQManagedObject constructor() exit
[05/10/2010 16:03:52:75 CDT] Thread: statusMgrConnection0, Object: com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2033 <== MQException constructor() exit
[05/10/2010 16:03:52:75 CDT] Thread: Cleanup(WMQC05:quesvc848:1922), Object: com.ibm.mq.MQSPIQueue@506c506c ==> MQQueue default constructor() entry
[05/10/2010 16:03:52:75 CDT] Thread: statusMgrConnection0, Object: com.ibm.mq.MQSPIQueueManager@e0a0e0a ==> errorOccurred() entry


Code:
[05/10/2010 16:03:52:113 CDT] Thread: statusMgrConnection0, Object: com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2033 ==> MQException constructor(cc, rc, source)() entry
[05/10/2010 16:03:52:113 CDT] Thread: main, Object: com.ibm.mq.MQv6InternalCommunications@35d435d4 ==> receive() entry
[05/10/2010 16:03:52:113 CDT] Thread: statusMgrConnection0, Object: com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2033 @(#)  javabase/com/ibm/mq/MQException.java, java, j600, j600-209-100121 1.83.1.10 09/10/06 12:30:55
[05/10/2010 16:03:52:113 CDT] Thread: main, Object: com.ibm.mq.MQv6InternalCommunications@35d435d4 ==> receiveBytesFaster() entry
[05/10/2010 16:03:52:113 CDT] Thread: statusMgrConnection0, Object: com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2033 cc     = 2
[05/10/2010 16:03:52:113 CDT] Thread: main, Object: com.ibm.mq.MQv6InternalCommunications@35d435d4 Waiting for data on input stream.
[05/10/2010 16:03:52:113 CDT] Thread: statusMgrConnection0, Object: com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2033 rc     = 2033
[05/10/2010 16:03:52:113 CDT] Thread: main, Object: com.ibm.mq.MQv6InternalCommunications@35d435d4 ==> timedReadInt() entry
[05/10/2010 16:03:52:113 CDT] Thread: statusMgrConnection0, Object: com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2033 source = com.ibm.mq.MQSPIQueue@6fa06fa
[05/10/2010 16:03:52:114 CDT] Thread: main, Object: com.ibm.mq.MQv6InternalCommunications@35d435d4 timeout = 360000
[05/10/2010 16:03:52:114 CDT] Thread: statusMgrConnection0, Object: com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2033 <== MQException constructor() exit
[05/10/2010 16:03:52:114 CDT] Thread: statusMgrConnection0, Object: com.ibm.mq.MQSPIQueueManager@e0a0e0a ==> errorOccurred() entry


and this is a little after the exception in the server log:

Code:
[05/10/2010 16:03:52:142 CDT] Thread: Cleanup(WMQC05:quesvc848:1922), Object: com.ibm.mq.MQException: MQJE001: Completion Code 1, Reason 2079 ==> MQException constructor(cc, rc, source)() entry
[05/10/2010 16:03:52:142 CDT] Thread: main, Object: com.ibm.mq.MQv6InternalCommunications@35d435d4 Message data follows:
[05/10/2010 16:03:52:142 CDT] Thread: Cleanup(WMQC05:quesvc848:1922), Object: com.ibm.mq.MQException: MQJE001: Completion Code 1, Reason 2079 @(#)  javabase/com/ibm/mq/MQException.java, java, j600, j600-209-100121 1.83.1.10 09/10/06 12:30:55
[05/10/2010 16:03:52:142 CDT] Thread: main, Object: com.ibm.mq.MQv6InternalCommunications@35d435d4 Data trace, 468 bytes of data follow:


As for the wmq_jca.trc file, there is nothing that looks out of sorts around that time.
Back to top
View user's profile Send private message
exerk
PostPosted: Wed Oct 06, 2010 2:00 pm    Post subject: Reply with quote

Jedi Council

Joined: 02 Nov 2006
Posts: 6339

A couple of fish for you...

Quote:
Reason Code 2033 x'7F1'
MQRC_NO_MSG_AVAILABLE

An MQGET call was issued, but there is no message on the queue satisfying the selection criteria specified in MQMD (the MsgId and CorrelId fields), and in MQGMO (the Options and MatchOptions fields). Either the MQGMO_WAIT option was not specified, or the time interval specified by the WaitInterval field in MQGMO has expired. This reason is also returned for an MQGET call for browse, when the end of the queue has been reached.

This reason code can also be returned by the mqGetBag and mqExecute calls.

mqGetBag is similar to MQGET. For the mqExecute call, the completion code can be either MQCC_WARNING or MQCC_FAILED:

* If the completion code is MQCC_WARNING, some response messages were received during the specified wait interval, but not all. The response bag contains system-generated nested bags for the messages that were received.

* If the completion code is MQCC_FAILED, no response messages were received during the specified wait interval.

Completion Code: MQCC_WARNING or MQCC_FAILED

Programmer response: If this is an expected condition, no corrective action is required.

If this is an unexpected condition, check that:

* The message was put on the queue successfully.

* The unit of work (if any) used for the MQPUT or MQPUT1 call was committed successfully.

* The options controlling the selection criteria are specified correctly. All of the following can affect the eligibility of a message for return on the MQGET call:

* MQGMO_LOGICAL_ORDER
* MQGMO_ALL_MSGS_AVAILABLE
* MQGMO_ALL_SEGMENTS_AVAILABLE
* MQGMO_COMPLETE_MSG
* MQMO_MATCH_MSG_ID
* MQMO_MATCH_CORREL_ID
* MQMO_MATCH_GROUP_ID
* MQMO_MATCH_MSG_SEQ_NUMBER
* MQMO_MATCH_OFFSET
* Value of MsgId field in MQMD
* Value of CorrelId field in MQMD

Consider waiting longer for the message.


Quote:
Reason Code 2079 x'81F'
MQRC_TRUNCATED_MSG_ACCEPTED

On an MQGET call, the message length was too large to fit into the supplied buffer. The MQGMO_ACCEPT_TRUNCATED_MSG option was specified, so the call completes. The message is removed from the queue (subject to unit-of-work considerations), or, if this was a browse operation, the browse cursor is advanced to this message.

The DataLength parameter is set to the length of the message before truncation, the Buffer parameter contains as much of the message as fits, and the MQMD structure is filled in.

Completion Code: MQCC_WARNING

Programmer response: None, because the application expected this situation.

_________________
It's puzzling, I don't think I've ever seen anything quite like this before...and it's hard to soar like an eagle when you're surrounded by turkeys.
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 Installation/Configuration Support » WMQ MQConnectionBrowser throwing NPE on JBoss 5.1
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.