#dominoforever | Product Ideas Portal

 

Welcome to the #dominoforever Product Ideas Forum! The place where you can submit product ideas and enhancement request. We encourage you to participate by voting on, commenting on, and creating new ideas. All new ideas will be evaluated by HCL Product Management & Engineering teams, and the next steps will be communicated. While not all submitted ideas will be executed upon, community feedback will play a key role in influencing which ideas are and when they will be implemented.

For more information and upcoming events around #dominoforever, please visit our Destination Domino Page

Allow Domino Java Agents to keep Java threads persistent as required to support JMS API message queue functionality

Java Message Service (JMS) API message queue functionality expects certain JMS threads to persist after initial invocation.

By contrast, all threads created by a Domino Java Agent are terminated when the agent completes execution. No threads are allowed to persist. This is currently working as designed.

If a Java agent utilizes the JMS API then it will execute successfully only during the first run of the agent. Subsequent executions of the agent will fail in JMS layer since expected JMS threads are missing. This is because all threads, including JMS threads, invoked during the first run are destroyed.

One common use case where JMS is required to run in a Domino Java agent is where the agent is designed to call the IBM MQ client layer. As of version 8, MQ reportedly switched their message queue provider from using MQI API, which does not require a thread to persist, to JMS API. Customers with Domino Java Agents which call MQ layer will encounter the scenario described above upon upgrading to MQ client V8 or higher.

Please enhance handling of Domino Java agent threads to allow persistent threads required by JMS to properly function.

  • Avatar32.5fb70cce7410889e661286fd7f1897de Guest
  • Oct 30 2018
  • Needs review
  • Attach files
  • Avatar40.8f183f721a2c86cd98fddbbe6dc46ec9
    Guest commented
    24 Jan 07:49am

    This enhancement for domino java agent to allow threads to persist which is required by JMS API is very critical to use features/functionalities of MQ above version 8 and other alternatives is having some impact or drawbacks. Please don't wait for more votes on this and understand the importance of this enhancement.

  • Avatar40.8f183f721a2c86cd98fddbbe6dc46ec9
    Guest commented
    23 Jan 06:52pm

    This enhancement is business critical for applications within IBM.

  • Avatar40.8f183f721a2c86cd98fddbbe6dc46ec9
    Guest commented
    11 Dec, 2018 01:57pm

    A work around is to set SHARECNV to 0. Then the channel is made compatible to version 6. See also https://www.ibm.com/support/knowledgecenter/en/SSFKSJ_8.0.0/com.ibm.mq.mig.doc/q001660_.htm

  • Avatar40.8f183f721a2c86cd98fddbbe6dc46ec9
    Guest commented
    6 Nov, 2018 12:35pm

    Has anyone tried this using an application scope bean?

  • Avatar40.8f183f721a2c86cd98fddbbe6dc46ec9
    Guest commented
    1 Nov, 2018 03:35am

    Just curious, can you use DOTS instead of java agent in NSF ? In theory since DOTS is initialised when server is started then the threads should be persistent, right ?

  • Avatar40.8f183f721a2c86cd98fddbbe6dc46ec9
    Guest commented
    31 Oct, 2018 01:54pm

    This enhancement is business critical for IBM. Numerous applications using Domino Java agent designed to call IBM MQ client layer. There are chances of multiple other customers having the same issue. MQ V7.x is EOL product , So we have to go with MQ v.8 however MQ API won't work with MQ v8 neither JMS API works !! So Please consider this request as a severity-1 issue. DO NOT WAIT for voting count !!