Uploaded image for project: 'CXF'
  1. CXF
  2. CXF-2030

JMS transport is not usable with IBM MQI interface endpoints

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.1.3
    • 2.0.11, 2.1.5
    • Transports
    • None

    Description

      Currently JMS client transport is missing "use MessageID as correlationID" capability.

      It is currently impossible to use CXF for two way exchanges with IBM MQ MQI interfaced endpoints (native MQ apps) because native MQI messages are missing MQRFH2 header and the correlationID is loaded into MQMD header instead.

      The only portable way of loading correlationID into MQMD header using JMS APIs is to form a correlationID that would comply with "A provider specific message ID" description as per IBM doc bellow.

      http://publib.boulder.ibm.com/infocenter/wmqv6/v6r0/index.jsp?topic=/com.ibm.mq.csqzaw.doc/uj25470_.htm

      So there are two ways of addressing this issue.

      1. Provide "use Message ID as correlation ID" capability
      2. Generate CorrelationID complaint with IBM MQI format

      1st option would take a bit of time do implement properly, that is avoid creating/deleteing a consumer for each potential reply. 2nd option is much easier to do.

      I'm going to attach a patch with tests for the 2nd option shortly. This fix would also enable CXF partition a given queue into virtual message spaces with a static correlationID and selector prefix.

      Attachments

        Issue Links

          Activity

            People

              dkulp Daniel Kulp
              marat Marat Gubaidullin
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: