To enable interactive administration of the Progress OpenEdge JMS Adapter, you configure the JMS provider using oemessaging. This configuration applies to both ClientConnect and BrokerConnect modes.

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.

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

  1. Open the %DLC%\properties\JavaTools.properties file.
  2. In the [SonicMQ] property section:
    • Add the JMS provider client JAR files to the classpath as shown in the following examples:
      [SonicMQ]
      classpath=C:\JMS\IBM\WEBSPHERE\java\lib\com.ibm.mqjms.jar,${DLC}/java/progress.jar
      [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 path is $DLC/sonic/MQ14.0/lib/sonic_client.jar. For example:
      [SonicMQ]
      classpath=$DLC/sonic/MQ14.0/lib/sonic_client.jar,${DLC}/java/progress.jar
      If there is more than one JAR file, provide their paths as comma-separated values.
    • Update the jvmargs and DjmsProvider properties to specify your JMS provider.
      • If you are using SonicMQ as a JMS provider, add the following entry below the classpath:
        jvmargs=-DsonicMQExtensions=true -DjmsProvider=SonicMQ
        This setting provides access to the SonicMQ proprietary APIs.
      • If you are configuring another third-party JMS provider, add the following entry below the classpath:
        jvmargs=-DsonicMQExtensions=false -DjmsProvider=ProviderName
        Where, ProviderName is the name of your JMS provider, such as WebSphereMQ or ArtemisMQ that must match the JMS provider specified in the jmsProvider.properties file.
        Note: Third-party JMS providers outside of SonicMQ can use JMS Administered Objects to access the provider-specific proprietary APIs.
  3. Open the %DLC%\properties\jmsProvider.properties file, specify the JMS Provider and define the connection factory. There are several third-party JMS providers that are pre-defined that provide 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.
  4. 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.