Author |
Message
|
cohswa |
Posted: Fri Jun 02, 2006 6:15 am Post subject: 3001 on MQ v6.0 for Z/OS |
|
|
Newbie
Joined: 01 Jun 2006 Posts: 3 Location: Dallas
|
I am running MQ v6.0 on Z/OS. We upgraded so that we could do JNDI lookup against the QMgr as we are doing with several of our distributed MQ 5.3 QMgrs. I was enlightened by IBM Support to the fact that MQ 5.3 on Z/OS did not support PCF commands, but assured that 6.0 does. When I try to start JMSAdmin.bat against our Z/OS v6.0 QMgr, I get a 3001 error:
-------------------------------------------------------------------------------
C:\PROGRA~1\IBM\WEBSPH~1\Java\bin>JMSAdmin.test.bat -v
5724-H72, 5655-L82, 5724-L26 (c) Copyright IBM Corp. 2002,2005. All Rights Reserved.
Starting Websphere MQ classes for Java(tm) Message Service Administration
Initializing JNDI Context...
INITIAL_CONTEXT_FACTORY: com.ibm.mq.jms.context.WMQInitialContextFactory
PROVIDER_URL: mainframea2:1452/SYSTEM.ADMIN.SVRCONN
JNDI initialization failed, please check your JNDI settings and service.
For additional information on the cause of this problem run with the -v argument
Error: javax.naming.ServiceUnavailableException: A connection to the queue manager was available but no response was recieved when it was sent a command message. Please ensure the command server is started with 'strmqcsv'. [Root exception is com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 3001]
--------------------------------------------------------------------------------
Is there something more that I am missing???
Help!  _________________ Chris Hanna |
|
Back to top |
|
 |
bower5932 |
Posted: Fri Jun 02, 2006 6:21 am Post subject: |
|
|
 Jedi Knight
Joined: 27 Aug 2001 Posts: 3023 Location: Dallas, TX, USA
|
Is the command server running? |
|
Back to top |
|
 |
cohswa |
Posted: Fri Jun 02, 2006 6:33 am Post subject: |
|
|
Newbie
Joined: 01 Jun 2006 Posts: 3 Location: Dallas
|
Yes, it is incorporated as part of the QM52MSTR started task on my system. _________________ Chris Hanna |
|
Back to top |
|
 |
jefflowrey |
Posted: Fri Jun 02, 2006 7:09 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Can you see a dynamic reply queue created during the processing?
Did you configure JMSAdmin to use an MQ JNDI context? Otherwise, I'd be surprised if it issued PCF commands at all. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
markt |
Posted: Fri Jun 02, 2006 7:21 am Post subject: |
|
|
 Knight
Joined: 14 May 2002 Posts: 508
|
com.ibm.mq.jms.context.WMQInitialContextFactory is not part of the MQ product. It's part of a cat2 supportpac (MS0N I think) and is almost certainly not updated to deal with the V6 PCF formats that are needed for communication with z/OS.
Although z/OS does now support PCF, it requires extensions beyond the V5.3 formats so "old" code won't automatically work. |
|
Back to top |
|
 |
cohswa |
Posted: Fri Jun 02, 2006 11:30 am Post subject: |
|
|
Newbie
Joined: 01 Jun 2006 Posts: 3 Location: Dallas
|
um... so do I need a new jar file(or files) or what? Is there a different version of JMSAdmin specific to Z/OS QMgrs???? Sorry but I'm not as up to speed on Java as I should be... _________________ Chris Hanna |
|
Back to top |
|
 |
jefflowrey |
Posted: Fri Jun 02, 2006 1:31 pm Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
What markt said is that you can't use MQ v6 on z/OS as a JNDI provider context. At all.
You will have to use a different JNDI provider context - file or LDAP or etc.
The tool that allows you to use MQ as a JNDI context does not support MQ v6 on z/OS at all. And it is a Category 2 support pack, so you can not open a PMR with IBM and get it changed.
Although this support pack, ME01, has been updated as of the end of May, it relies on MS0B which has not been updated for version 6 of MQ (and probably won't be?).
So there's a slight chance you can redownload ME01, and it will work. But it seems unlikley. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
GarethMatthews |
Posted: Mon Jun 05, 2006 5:03 am Post subject: |
|
|
Newbie
Joined: 05 Jun 2006 Posts: 1 Location: Winchester, UK
|
The WMQInitialContextFactory is provided as part of support pac ME01 which is an implementation of Sun's JNDI specification that talks to a queue manager directly using PCF commands. The PCF support is provided by the MS0B support pac which allows easy creating / sending of PCF messages to enquire about what is going on with the queue manager.
In V6 of WMQ, PCF support was introduced into the z/OS queue manager - however, the MS0B support pac has not yet been updated to cater for these changes. I spoke to the author of this support pac today and it is something that he is working on as we speak and hopes to release an update very soon. At which point, ME01 should be able to function correctly.
So - keep an eye for a new version of MS0B and when it is available it should make ME01 work
Cheers,
Gareth |
|
Back to top |
|
 |
CMF |
Posted: Tue Jul 18, 2006 10:24 am Post subject: |
|
|
Novice
Joined: 18 Apr 2006 Posts: 10 Location: Nashville
|
I am having a similiar problem and have opened a case with IBM.
I can see the dynamic queue being created. I do not see any errors coming from the queue manager.
snippet of code:
PCFMessageAgent agent;
PCFMessage PCFrequest;
PCFMessage [] PCFresponses;
String host = serverA.mydomain.com;
int port = 1414;
String channel = MYADMIN.SVRCONN;
agent = new PCFMessageAgent (host, port, channel);
PCFrequest = new PCFMessage (CMQCFC.MQCMD_INQUIRE_Q_MGR);
PCFresponses = agent.send (PCFrequest);
error:
[7/14/06 14:28:56:642 CDT] 00000040 SystemErr R com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 3001
at com.ibm.mq.pcf.MQCFH.initialize(MQCFH.java(Compiled Code))
at com.ibm.mq.pcf.MQCFH.<init>(MQCFH.java(Inlined Compiled Code))
at com.ibm.mq.pcf.PCFMessage.initialize(PCFMessage.java(Inlined Compiled Code))
at com.ibm.mq.pcf.PCFMessage.<init>(PCFMessage.java(Inlined Compiled Code))
at com.ibm.mq.pcf.PCFMessageAgent.send(PCFMessageAgent.java(Compiled Code))
at com.ibm.mq.pcf.PCFMessageAgent.send(PCFMessageAgent.java(Inlined Compiled Code))
at tools.QueryQM.getpcf(QueryQM.java(Compiled Code))
at tools.Controller.processRequest(Controller.java:114)
at tools.Controller.doPost(Controller.java:53)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1282)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:673)
at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:80)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:1804)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:84)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:469)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:408)
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:101)
at com.ibm.ws.tcp.channel.impl.WorkQueueManager.requestComplete(WorkQueueManager.java(Compiled Code))
at com.ibm.ws.tcp.channel.impl.WorkQueueManager.attemptIO(WorkQueueManager.java(Compiled Code))
at com.ibm.ws.tcp.channel.impl.WorkQueueManager.workerRun(WorkQueueManager.java(Compiled Code))
at com.ibm.ws.tcp.channel.impl.WorkQueueManager$Worker.run(WorkQueueManager.java(Compiled Code))
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java(Compiled Code)) |
|
Back to top |
|
 |
bower5932 |
Posted: Tue Jul 18, 2006 12:00 pm Post subject: |
|
|
 Jedi Knight
Joined: 27 Aug 2001 Posts: 3023 Location: Dallas, TX, USA
|
Out of curiosity, are you also running your program against a zOS queue manager? |
|
Back to top |
|
 |
CMF |
Posted: Tue Jul 18, 2006 1:14 pm Post subject: |
|
|
Novice
Joined: 18 Apr 2006 Posts: 10 Location: Nashville
|
bower5932 wrote: |
Out of curiosity, are you also running your program against a zOS queue manager? |
Yes. v6.0 |
|
Back to top |
|
 |
fjb_saper |
Posted: Tue Jul 18, 2006 2:59 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
Out of curiosity has any of you tried the file context? I never use the dynamic JNDI context as in the support pack. The essence of JNDI (on the web server) is that it is set when you start the appserver for the lifetime of the appserver.(Yes there are ways to manipulate it dynamically but this is more the exception than the rule). The definitions should be fairly static and a file context should do nicely. There is nothing to discover as all the setup needs to be done before you ever run a line of programing against the JNDI information...
Enjoy  _________________ MQ & Broker admin |
|
Back to top |
|
 |
bower5932 |
Posted: Wed Jul 19, 2006 5:56 am Post subject: |
|
|
 Jedi Knight
Joined: 27 Aug 2001 Posts: 3023 Location: Dallas, TX, USA
|
My guess is that the file system will work. I think the problem has something to do with the PCFs that are being built when dealing with the qmgr as the JNDI repository. |
|
Back to top |
|
 |
CMF |
Posted: Wed Jul 19, 2006 6:37 am Post subject: |
|
|
Novice
Joined: 18 Apr 2006 Posts: 10 Location: Nashville
|
I'm not using JNDI.
That's why I posted. I wanted to let you know that this does not appear to be a JNDI problem.
I running the code above on AppServer v6.0 for Windows, connecting to MQv6 QM on z/OS 1.7
The code works fine against Windows, AIX and AS/400 QMs. |
|
Back to top |
|
 |
fjb_saper |
Posted: Wed Jul 19, 2006 3:32 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
Didn't I read somewhere that MS0B has not yet been updated for V6? and as such is not working on ZOS? _________________ MQ & Broker admin |
|
Back to top |
|
 |
|