MQ

MQ

Join this online group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only
Expand all | Collapse all

Windows MQ Client with AMQCLCHL.TAB to Linux MQ Server

  • 1.  Windows MQ Client with AMQCLCHL.TAB to Linux MQ Server

    Posted Sun September 25, 2011 12:33 PM
    I am new to MQ and setting up and testing environment to test a Windows MQ client to Linux MQ server configuration.

    The Windows MQ Client is version 7.0.1.6  CMVC level: p701-106-110725
    The Linux MQ Server is version 7.0.1.6 (90 day evaluation) CMVC level: P701-106-110725
       
    On the Linux MQ server, I created a Q manager and created appropriate queue, listener, a SVRCONN channal and a CLNTCONN channel. The channels are:

    define CHANNEL (TO.QM1) CHLTYPE (SVRCONN) TRPTYPE (TCP) MCAUSER ('stephen')

    deinfe CHANNEL (TO.QM1) CHLTYPE (CLNTCONN) TRPTYPE (TCP) CONNAME ('192.168.1.52(30000)') QMNAME (QM1)

    With the above setup on the MQ server:

    I first setup in Windows Client:  SET MQSERVER=TO.QM1/TCP/192.168.1.52(30000)
    I then run 'amqsputc TESTQ'. Everything was fine. I can put test message in and get the test messsage at the Linux Server.

    I then start to test using 'client channel definition table' by copying the AMQCLCHL.TAB file from Linux server: /var/mqm/qmgrs/QM1/@ipcc directory to Windows client and put it in: C:\qmssl folder.
    I set:   SET MQCHLLIB=C:\QMSSL
               SET MQCHLTAB=AMQCLCHL.TAB

    I run:  amqsputc TESTQ

    I got:     MQCONN ended with reason code 2538

    From c:\program files\IBM\WebSphere MQ\error, the error shows in the log is:
    "AMQ9202: Remote host 'Winsrv1 (192.168.1.55) (1414)' not available, retry
    later."
    Windows Event log logs Event ID: 9202 with the same error text.

    The interesting thing here is that Remote host 'Winsrv1 (192.168.1.55) (1414)' here is acutally the Windows server itself, NOT the remote Q Manager!

    Although 'AMQCLCHL.TAB' is a binary file, I could see some clear text pointing to my linux Q Manager: 192.168.1.52 (30000).

    My question is where does Windows cient get this 'Winsrv1 (192.168.1.55) (1414)' as the remote host? Is there some hidden default configuration Windows Client is picking from? In addition to "MQCHLLIB" and "MQCHLTAB" variables, are there any other configurations that I need for AMQCLCHL.TAB file to work.

    I looked at IBM help and google around, all I can learn is to set the above two variable. What I am missing?

    I am stock and hope some one can help me out!

    Thanks in advance.


    Stephen                     
            

                       


  • 2.  Windows MQ Client with AMQCLCHL.TAB to Linux MQ Server

    Posted Thu December 22, 2011 06:24 PM
    Initially, could be a simple syntax error.
    amqsputc
    If you do not provide the qmgr name, it will assume the default local qmgr. This would explain why you see the Windows event log entry pointing at the local machine.
    With version 7, I believe instead of maintaining the CCDT, you can provide entries in mqclient.ini (this will also allow application reconnect and Multi Instance Queue Managers)
    Append something similar:
    CHANNELS:
    DefRecon=YES
    #* The following is a Multi-Instance Queue Manager Group (in a single line)
    ServerConnectionParms=TO.QM1/TCP/machine1.domain.com(1414),machine2.domain.com(1514)