Code Monkey home page Code Monkey logo

datapower-mq's Introduction

IBM Datapower - Bridge HTTP to IBM MQ


This guide describes basic configuration to connect a HTTP-based messaging system to an IBM MQ System within a DataPower service. The handler implements HTTP transport connectivity on the client, which is the front end of the service. On the back end, the service employs IBM MQ URLs to determine the queue to which requests are forwarded and from which replies are pulled.

Architecture

You can find more information about this topic on: Datapower Documentation

1.Requirements

  • IBM Datapower Physical Appliance/Virtual Machine/Docker Container (IDG.10.5.0.6)
  • IBM MQ V9.X
  • App Connect Enterprise 12.x with associated MQ
  • There must be network connectivity between all components

2.Preparing MQ Environment

  • Ensure to have access to an IBM MQ Queue Manager V9+ in order to create the queues for the demo
  • Execute the following commands in you IBM MQ environment to create the queues
runmqsc <QUEUE_MANAGER_MAME>
DEFINE QLOCAL('DP_IN') REPLACE
DEFINE QLOCAL('DP_OUT') REPLACE
EXIT

3.Preparing ACE(App Connect Enterprise) Environment

  • This flow is the simulated backend for the MQ Service.
  • Obtain the project interchage files from here if you want to review and change the flow that acts as a backend service for MQ. (Optional)
  • Obtain the deployable ACE bar file from here to deploy the backend service to your ACE environment.
  • The implemented flow has the following componentes.
    • MQ Input: Acts as a listener for messages in the DP_IN queue
    • Compute: Creates the response message and assigns the correlationID to the value of the messageID recieved, this is very important to allow Datapower to get the corresponding response message.
    • MQ Output: Sends the response message to the DP_OUT queue

ACE


4.Configure IBM Datapower Local Queue Manager Connection

  • Make sure you have a separate application domain (other than default)
  • Look for "IBM MQ" in the search bar and select IBM MQ v9+ queue manager

DP1

  • In the next screen click Add to create the new Queue Manager Connection

DP2

  • Configure the properties for the Queue Manager connection:

    • Name (Required): The name of the object, in this case MYMQ
    • Host (Required): The hostname and port of your MQ Server
    • Queue manager name: The name of the Queue Manager
    • Channel name: The name of the connection channel
    • Alternate user: Off
    • Units-of-work and backout: 0
    • The rest of properties can be default

    DP3 DP4

  • In the Connections and CSCI tabs leave default values

  • In the MQCSP Tab configure the username and password to connect to your MQ Server DP5

  • Once completed Apply and Save all changes. The new Queue Manager object should be up and running.

    DP6


5.Configure IBM Datapower Multi-Protocol Gateway for HTTP to IBM MQ Bridge

  • In the web console main page select Services and Multi-Protocol Gateway

DP7

  • In the next screen click Add to create the new Multi-Protocol Gateway

DP8

  • In the configuration tab, enter the name for the Multi-Protocol Gateway, choose the XML Manager default, in the Type select static-backend and in the Default property Bakend URL enter the URL of the queue manager, in this case idgmq://MYMQ,configure a Front Side Protocol to define the interface and port the service will be using.

DP9 DP10

  • Next click on + to create a new Multi-Protocol Gateway Style Policy DP11

    • Create a new Client to Server rule with the following actions:

      • A match rule to handle the requests of every context: *
      • A gateway script action that configures the input and output queues for the bridge service: the file to be used is: config.js

      DP12

    • Create a new Server to Client rule with the following actions:

      • A match rule to handle the responses of every context: *
      • A gateway script action to set the response headers for the http request: the file to be used is: config2.js

      DP13

  • Once completed Apply and Save all changes.

  • Back in the Multi-Protocol Gateway configuration make sure that Response type and Request type is set to JSON

DP14 DP15

  • Once completed Apply and Save all changes.

6.Testing the Datapower Multi-Protocol Gateway Service

  • Once the configuration is completed, the service testing can be made using any http method invocation tool using the address, port(Front Side Protocol Handler) and context configured.

DP16

Congratulations you have successfully configured an HTTP to IBM MQ Bridge using IBM Datapower

datapower-mq's People

Contributors

fxnaranjo avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.