Submit and vote on feature ideas.

Welcome to the new Parasoft forums! We hope you will enjoy the site and try out some of the new features, like sharing an idea you may have for one of our products or following a category.

Virtualize - MQ details configuration

Options
Priyaa
Priyaa Posts: 2

Hi,

I'm new to Parasoft and trying to create a Plain XML Message Responder.
I've details like MQ Channel, host name, port, Queue Manager, Request and Reply Queue.
But i see SubIdentity, SubPoint, SubName, SubUserData in TransportHeader->MQ->Publish/Subscribe Command.
How do i map these values to the fields?

Can someone help me what i'm missing.

Thanks in advance,
Priyaa

Comments

  • benken_parasoft
    benken_parasoft Posts: 1,253 ✭✭✭
    edited February 2019
    Options

    MQ Channel, host name, port, Queue Manager, Request and Reply Queue

    You configure these main connection settings in the deployment configuration for the Virtual Asset (from Virtualize Server view) not directly in the Responder tool. However, in the Responder tool, you can optionally configure any MQMD and MQRFH2 message headers.

  • Priyaa
    Priyaa Posts: 2
    Options

    Thank you for the quick response

  • kanth
    kanth Posts: 5
    Options

    hi , I am also working on MQ Virtualization in Parasoft. I have done necessary configuration for MQ queue manager, channel, and other details. i am able to successfully send the request to Queue. But I am not getting the necessary response from MQ responder which is configured. I am getting the same push message back as Get message.

    My Configurations include :
    Put Queue, get Quque for client and Server

    ex: Client Queue: Put - Q1 , Get : Q2
    Server Queue : Put : Q2 and Get : Q1 .

    and IBM MEQ Server is deployed in Localhost. @ 1414

    MQ Put Message - is having JSON PAYLOAD.

    Can you please let me know how we can get the responder get message for the Put I am doing.

  • williammccusker
    williammccusker Posts: 654 ✭✭✭
    Options

    Hi Kanth,

    Are both the client and the server connecting to the same MQ on localhost? I believe the issue is that you actually need four queues: two for the client and two the server. Otherwise as you noticed the push to the server gets picked back up.

    For example
    client queues: PUT c1 and GET c2
    server queues: PUT s2 and GET s1

    Virtualize will route messages from the client PUT c1 to the server GET s1 and from the server GET s2 to the client GET c2.

    Let me know if this helps!

  • kanth
    kanth Posts: 5
    Options

    Got it.. i have only 2 Queue in the Localhost where IBM WebSphere is deployed . .should I create additional queues ..

    Current config in my system is that Localhost where IBM MQ is installed is having only 2 queues .. i.e Q1 and Q2. Can I use these two queues .. instead of 4 queues

  • williammccusker
    williammccusker Posts: 654 ✭✭✭
    Options

    Hi Kanth,

    You need to have four queues total. Two for the client side and two for the server side. This is so that the message proxy can sit in between the client and the server to pick messages from the client and pass them along to the server while being able to record them if recording is turned on.

    You should create two additional queues, you can keep using Q1 and Q2 but you will need two more.

    Hope this helps.

  • kanth
    kanth Posts: 5
    Options

    Client is Putting messages in Q1 and Getting messages from Q2 . .Similarly Server is Getting the messages from Q1 and putting responses in Q2 . Do we need additional Queues .. ? Can we use these queues to establish the MQ virtualization ..

  • kanth
    kanth Posts: 5
    Options

    Oh Ok . I will try with 4 Queues

  • williammccusker
    williammccusker Posts: 654 ✭✭✭
    Options

    Hi Kanth,

    Either the client or the server needs to be updated to read from two new queues otherwise the message proxy won't be able to record traffic between the two. The challenge with just two queues is that the server or the client could get a message off the queue before the message proxy has a change to see it.

  • kanth
    kanth Posts: 5
    Options

    Hi Thanks for your inputs. Now i am getting the response from Virtual MQ Responder. Now i am trying to set the mapping to get specific message, I selected correlation Id and Message ID options in MQ-Put options from SOA test to send Put msg to Virtual MQ. But still could not succeed. Can you give some tips pls .. thanks in advance.

  • williammccusker
    williammccusker Posts: 654 ✭✭✭
    Options

    Hi kanth,

    It sounds like you are attempting to configure SOA to put a message onto the client queues and then pick up the specific response message from the get queue using a correlation id?

    There shouldn't be anything you need to configure in the message proxy for this, it automatically sets the correlation id on the response messages it places on the client's get queue.

  • Jay3866
    Jay3866 Posts: 2
    Options

    Hi Guys
    I have just went through your sceanrio and came to know that we should be having atleast 4 ques in order to virtualize an MQ but for my Sceanrio I only have a Incoming MQ coming from one application to our mainframe application just for inventory update so can you guys guide me would I be able to virtualize the MQ or not

    as there is a standalone MQ which sends an update without putting a request to the application

  • williammccusker
    williammccusker Posts: 654 ✭✭✭
    Options

    Hi,

    In this case, is the MQ Queue being consumed by the application? Or the mainframe? Depending on which way the data is going there are different options. Is your application sending a request to the MQ Queue? Or is it just wanting for the update message to show up in the MQ Queue?

  • Jay3866
    Jay3866 Posts: 2
    Options

    Hello @williammccusker
    yes the mainframe application is consuming the MQ and whatever the new XML messages are there in MQ are consumed.
    no our application is not sending any req to MQ Queue
    its just wanting for the update message to show up in the MQ Queue
    i guess its using Point to POint messaging Pattern IBM provides