Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

This component can be used to send Text, Bytes or Map messages. The only restriction on Map Messages is that this component does not support Objects in Map Messages.

Points to Note

  • Set optimal message age (Time-to-live property) so as to reduce memory overhead, thus improving performance.

  • Less message size gives better performance and vice versa. For example, ByteMessage takes less memory than TextMessage, hence choose message type carefully to avoid unnecessary memory overhead.
  • Delivery mode defines whether the message can be persistent or non-persistent. This factor has an impact on the performance. Choose non-persistent messages where appropriate.

Anchor
__RefHeading__12_1474924691
__RefHeading__12_1474924691
Configuration

Anchor
__RefHeading__14_1474924691
__RefHeading__14_1474924691
JMS Connection Configuration

Connection configuration details can be specified in this panel.

Image Added
Figure 1: Connection Configuration panel

Provider URL Settings

JMS Provider

Choose the MQ server from the drop-down list provided. The JMS providers supported are:

  • Fiorano MQ, BEA Weblogic and JBoss.
  • BEA WebLogic
  • Oracle AQ
  • JBoss
  • Open MQ
  • Rabbit MQ
Note

For working with these JMS providers the jars that should be explicitly added as resources to the component are given below:

  • BEA WebLogic:
    • %BEA_HOME%\server\lib\wlclient.jar
    • %BEA_HOME%\server\lib\wljmsclient.jar (required only when the Weblogic server is running on a remote machine)
    • %BEA_HOME%\server\lib\wlthint3client.jar (required only when the Weblogic server is running on a remote machine)

      Note

      For BEA Weblogic 10.3, %BEA_HOME% refers to <BEA WebLogic Installation directory>\wlserver_10.3.

  • Oracle AQ:
    • %ORACLE_HOME%\rdbms\jlib\aqapi13.jar (If JDK1.2 / JDK1.1 is used, aqapi12.jar/aqapi11.jar has to be used respectively)
    • %ORACLE_HOME%\jdbc\lib\ojdbc14.jar%ORACLE_HOME%\jdbc\lib\nls_charset12.jar

      Note
      • For Oracle Database 9.2.0.1.0, %ORACLE_HOME% refers to <Oracle Installation directory>\ora92.
      • If these jars are added to resources of the System library JMSCommon, the jars will be available for JMSIn 5.0, JMSOut 5.0 & JMSRequestor 5.0 components. Refer to the Adding Resources To a Microservice section to perform this action.
  • JBoss:

    • %JBOSS_HOME%\client\jnp-client.jar
    • %JBOSS_HOME%\client\jboss-common-client.jar
    • %JBOSS_HOME%\client\jbossmq-client.jar
    • %JBOSS_HOME%\client\jboss-client.jar
       
  • JBoss6.0.0:
    Along with the JBoss jars mentioned above, add the below jars as well:

    • hornetq-core-2.2.13.Final.jar
    • hornetq-jms-2.2.13.Final.jar
    • hornetq-ra-2.2.13.Final.jar
    • jboss-as-build-config.jar
    • jboss-ejb-api_3.1_spec.jar
    • jboss-ejb-client.jar
    • jboss-logging.jar
    • jboss-marshalling.jar
    • jboss-marshalling-river.jar
    • jboss-remote-naming.jar
    • jboss-remoting.jar
    • jboss-sasl.jar
    • jboss-transaction-api_1.1_spec.jar
    • jgroups.jar
    • netty.jar
    • xnio-api.jar
    • xnio-nio.jar
  • OpenMQ:

    • %OpenMQ_HOME%/mq/lib/fscontext.jar

    • %OpenMQ_HOME%/mq/lib/imq.jar

  • Rabbit MQ
    • amqp-client-4.1.1.jar

    • fscontext-4.5-b25.jar

    • rabbitmq-jms-client.jar

Info
  • If the above jars are added to resources of the System library 

...

  • JMSAdapters, the jars will be available for all

...

  • JMS components. Refer to the Adding Resources To a Microservice section to perform this action.
  • In case of BEA Weblogic, InitialContext can be created by specifying empty values for JNDI Username and JNDI password as well.

...

  • To save a specific configuration for further use, Named Configuration

...

  •  option is available

...

  • in JMS Connection Configuration

...

  •  properties as well

...

  • as Send Configuration

...

  •  properties. Please refer the Named Configurations in CPS

...

...

  •  page to understand the procedure to save a Named Configuration

...

...

Connection Configuration

Connection configuration details can be specified in this panel.

Image Removed
Figure 1: Connection Configuration panel

Provider URL Settings

JMS Provider

Choose the MQ server from the drop-down list provided. The JMS provider options present in the drop-down are:

  • FIORANO
  • WEBLOGIC
  • ORACLE_AQ
  • JBOSS
Connection Configuration

To set the Connection Configuration in the dialog box, click the button on the right side of the property.

...

The URL of the server to which the component microservice connects.

Tip

In case of Rabbit MQ JMS Client, provide the location of the JNDI ".bindings" file.

Info
titleExample
Code Block
titleWindows
file:C:/JNDI-Directory/.bindings
Code Block
titleUnix
file:var/mqm/JNDI-Directory/.bindings 

Refer the Creating the .bindings file for Rabbit MQ JMS Provider section to know how to create a .bindings file.

Backup URLs

The backup URLs to which the component tries to connect if the server specified by the property "server URL" is down. Multiple backup URLs can be specified by separating them with ";" in case of all servers except the openMQ where comma ( , )  has to be used.

...

AttributeDescription
Key Manager Factory TypeAlgorithm for the Key Manager Factory.
Key Store TypeType of the Key Store whose location is specified by Key Store Location should be specified in the fileld.
Key Store LocationLocation of the key store file can be provided using the file dialog that opens up on clicking the ellipsis  button.
The KeyStore is used by the component for client authentication.
Key Store PasswordPassword of the specified key store can be specified in the field.
Key Store Client KeyDetermines Key Store Client Key

...

To configure the message type in the dialog box, click the button on the right side of the property.

Image RemovedImage Added
Figure 5: Message Definition Confguration Configuration dialog box with Message Type - 'Test Message'

...

This option has to be chosen if the component needs an XML interface. If this is not selected, schema will not be set on input port of the component and the message received on the input port will be sent to the destination as it is.

Note

Byte Message as Text property is not applicable in JMSIn5.0 microservice.

Message Type

The type of the message that needs to be sent can be chosen as one of the following:

...

The properties and application context can be set as shown in the figure.

Image RemovedImage Added
Figure 6: Providing Application Context and Property

Remove Properties with null value

If this option is checked, header properties with null value will be excluded in the Output message retrieved from the JMS server.

Message Content

Depending on the Message Type selected, the appropriate parsing option is shown. Message Type and the corresponding parsing option is explained below.

...

This option has to be chosen to create a destination with the provided name in case the provided destination does not exist.

Note
  • This is applicable only for Fiorano MQ. In case of Oracle AQ,
you need to
  • create destinations in the Oracle DB manually.
  • For Rabbit MQ JMS Provider, if the destination provided is not present in the ".bindings" file, then it will be created dynamically. If 'AutoCreate Destination' is disabled, then the destination must be declared in the ".bindings" file, if not, it displays an error message in the error logs that reads, 'Error getting the destination'.

    Tip

    Refer the Creating the .bindings file for Rabbit MQ JMS Provider section to know how to create a .bindings file.

Destination specified for the property Destination Name should already exist if BEA Weblogic/Oracle AQ is being used. Dynamic creation of destinations is not supported for these providers.

For BEA Weblogic, value for Destination Name should be the JNDI name of the destination. Ex
Example: weblogic.examples.jms.exampleTopic or if Destination Name is provided in the format JMS_Module_Name!Destination_Name, then Autocreate destination property is mandatory for lookup and it will not create a new destination in this case.

...

Adaptavist ThemeBuilder EngineAtlassian Confluence