Configure the JMS provider using adaptman with AdminServer for non-interactive administration of the Progress OpenEdge JMS Adapter.

Prerequisites
  • The JMS provider server is configured and available.

  • The Progress OpenEdge JMS Adapter is installed.

  • The required JMS provider client binaries (JAR files) are available.

  • AdminServer plugin entries are configured for the JMS Adapter broker so that AdminServer can identify and manage the broker using adaptman. For details, see Configure AdminServer plugin entries for running the JMS Adapter broker instance.

To configure your JMS provider to work with the Progress OpenEdge JMS Adapter when using adaptman, complete the following steps:

  1. Open the %DLC%\properties\AdminServerPlugins.properties file.
  2. Add the JMS provider client JAR files to the classpath under the [PluginPolicy.Progress.SonicMQ] property section, as in the following examples:
    [PluginPolicy.Progress.SonicMQ]
    classpath=C:\JMS\IBM\WEBSPHERE\java\lib\com.ibm.mqjms.jar,${DLC}/java/progress.jar
    [PluginPolicy.Progress.SonicMQ]
    classpath=C:\JMS\ArtemisMQ\apache-artemis-2.11.0-bin\apache-artemis-2.11.0\lib\client\artemis-jms-client-all-2.11.0.jar,${DLC}/java/progress.jar
    Note: SonicMQ client JAR files are not shipped with OpenEdge. If you are using SonicMQ as a JMS provider, you must also add them to the classpath. The default is $DLC/sonic/MQ14.0/lib/sonic_client.jar. For example:
    [PluginPolicy.Progress.SonicMQ]
    classpath=$DLC/sonic/MQ14.0/lib/sonic_client.jar,${DLC}/java/progress.jar
    If there is more than one JAR file, provide the paths as comma-separated values.
  3. Update the jvmargs and DjmsProvider properties under the [PluginPolicy.Progress.SonicMQ] property section to specify your JMS provider.
    • If you are using SonicMQ as a JMS provider, add the following entry to the [PluginPolicy.Progress.SonicMQ] property section below the classpath:
      jvmargs=-DsonicMQExtensions=true -DjmsProvider=SonicMQ
      This provides access to the SonicMQ proprietary APIs.
    • If you are configuring another third-party JMS provider, add the following entry to the [PluginPolicy.Progress.SonicMQ] property section below the classpath:
      jvmargs=-DsonicMQExtensions=false -DjmsProvider=ProviderName

    Where ProviderName is the name of your JMS provider, such as WebSphereMQ or ArtemisMQ. The ProviderName must match the JMS provider specified in the jmsProvider.properties file. Third-party JMS providers outside of SonicMQ can use JMS Administered Objects to access the provider-specific proprietary APIs.

  4. Open the %DLC%\properties\jmsProvider.properties file and specify the JMS Provider and define the Connection Factory. Several third-party JMS providers are pre-defined with connection factory class names. If your JMS provider is not listed, then add it to the list with the following format:
    [MyJMSProvider]
    javax.jms.ConnectionFactory=
    javax.jms.QueueConnectionFactory=
    javax.jms.TopicConnectionFactory=
    Note:
    • Do not modify the javax.jms.* property names. The property values for these property names must be specific to the JMS provider.
    • The JMS Adapter does not support jakarta.jms.* class names.
  5. If you require an update to your JDK version or Java Path, update the file location that you specified in the Progress OpenEdge JMS Adapter installation using the %DLC%\properties\JMSAdapterJava.properties file.