Announcement

Collapse

Mirth Connect 3.12.0 Released!

Mirth Connect 3.12.0 is now available as an appliance update and on our GitHub page. This release includes database performance improvements, improves visual HL7 representation, message pruning, keystore handling, PDF generation, community contributions, and fixes several security vulnerabilities. This release also contains many improvements to commercial extensions. See the release notes for the list of fixes and updates.

Download | See What's New | Upgrade Guide | Release Notes

For discussion on this release, see this thread.
See more
See less

Destination response disappears from responseMap

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Destination response disappears from responseMap

    I have a channel (channel "A") with connector type set to Channel Reader.
    The channel has two destinations, a Soap Sender called "WebService.Call" and a JavaScript writer called "WebService.Result".
    The javascript in the WebService.Result destination calls responseMap.get("WebService.Call"); to get the response of the 1st destination in order to examine the destinations status and the web service response.

    If I send a message to that channel from a different channel, and look at channel A's messages in the dashboard I can see 3 meessages, for the 3 different connectors (Source, WebService.Call and WebService.Result). When I look at the mappings for the WebService.Call connector message, I can see that there is a response map variable called "WebService.Call" which says "SUCCESS: <soap:Envelop ...". When I look at the mappings for the WebService.Result connector that response map variable is no longer there, which is a problem for me because I want to examine that data using javascript.

    I don't understand why that variable disappears. Any help appreciated. Generic_Document_Library_Uploader.xml (19256 bytes)

  • #2
    Reestination response disappears from responseMap

    More information:

    Ok, both channels are synchronized, so the destinations should run in order.
    What I found is that if Channel A sends a message to Channel B the destinations in Channel B are only guaranteed to execute in order if Channel A's Channel Writer destination is set to Wait for Channel Response. If Channel A's Channel Writer destination is not set to Wait for Channel Response then even if Channel B is synchronized it's destinations are not guaranteed to execute in order.

    I think this is a bug a channels destinations should execute in order if the channel is set to synchronized, regardless if the sending channel is waiting for a response.

    Is there a work around for this?

    Comment


    • #3
      Reestination response disappears from responseMap

      This has always been this way. I tend to use the routeMessage function and a JS writer so I have full control (useQueues and synchronized). If you'd like, you can submit a improvement defect and assign it to me and I will get to it when I have time.
      Brendan Haverlock | Mirth Software Engineer | Mirth Corporation

      Comment

      Working...
      X