Versions Compared

Key

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

...

Managed Connection Factory

Image Modified
Figure 1: Sample JMSIn MCF configuration

...

The JMS providers supported are BEA Weblogic, Fiorano MQ, BEA Weblogic, Oracle AQ, Oracle Streams AQ and JBoss. , JBoss, Open MQ, and Rabbit MQ.

Image Added
Figure 2: List of JMS Providers

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

BEA WebLogic

...

  • 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
Open MQ
  • %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

Note
  • If these jars are added to resources of the System library "JMSAdapters" under System Lib in the Micro Service Repository panel, the jars are get 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.
  • When configuring JMSIn 4.0 for BEA Weblogic in scheduling mode, the colour of the component does not change to green on startup. In order to avoid this, it is necessary to add following security permission in java.policy file under {JRE_HOME}/lib/security >. The permission to be added is "grant { permission javax.management.MBeanTrustPermission "register";} "
  • After adding BEA Weblogic jars as resources, if we try to configure the component for Topic destination type in Fiorano MQ provider, test in Interactions configuration page of CPS will fail with java.lang.NoSuchMethodError. This is due to javax.jms package conflict present in both weblogic jars and jms-2.0.jar used by Fiorano. To avoid this, wljmsclient.jar and wlthint3client.jar has to be updated with the classes in javax.jms package of jms-2.0 jar by following these steps:
    1. Copy jms-2.0.jar present in %FIORANO_HOME%/extlib/jms to any location and extract the contents of jar using the command "jar xf jms-2.0.jar" from command prompt. 
    2. Update javax.jms package classes in wljmsclient.jar with the above extracted classes using the command " jar uf wljmsclient.jar -C %EXTRACTED_PATH%  javax/jms/* " from command prompt where %EXTRACTED_PATH% is the location where jms-2.0.jar is extracted. Similarly wlthint3client.jar has to be updated.
Connection Configuration

Image Modified
Figure 23: Connection Configuration

Named Configuration

...

Please refer Custom Encryption For Passwords section in Common Configurations page for the documentation.

Server URL

IP address The URL of the JMS server to which the microservice connects.

Note

Use the port 1867 to connect to the default Peer Server

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 a ';'.

...

Click the Ellipsis  button to configure the SSL Settings in the dialog box.

Image Modified
Figure 34: SSL Security settings options in the SSL Configuration panel

PropertyDescription
Enable SSlSelect this option to enable SSL Settings. Rest of the properties in this editor are enabled and configurable only when this property is checked.
Trust Store LocationLocation of the Java keystore file containing the collection of CA certificates trusted by this application process (trust store)
Trust Store PasswordPassword to unlock the keystore file (store password)
Key Store LocationLocation of the Java keystore file containing an application process's own certificate and private key.
Key Store PasswordPassword to access the private key from the keystore file.
Key Store TypeFor Java keystore file format, this property has the value jks(or JKS). You do not normally specify this property, because its default value is already jks.
Trust Store TypeFor Java keystore file format, this property has the value jks(or JKS). You do not normally specify this property, because its default value is already jks
Trust Manager Factory TypeAlgorithm for the Trust Manager Factory.
Key Manager Factory TypeAlgorithm for the Key Manager Factory.
Security Provider ClassDetermines Security provider class.
Security ProtocolDetermines Security protocol
Key Store Client KeyDetermines Key Store Client Key

JNDI Settings

Image Modified
Figure 45: JNDI Settings

JNDI Configuration

...

While configuring JMSIn with Fiorano MQ HA profiles, we should provide Initial Context Properties in Advanced Info in the Managed Connection Factory Panel in the CPS.
Set the properties as below:

...

Interaction Configurations

Image Modified
Figure 56: Interaction Configurations panel in CPS

...

Destination Configuration

Image Modified
Figure 67: Destination Configuration options

...

Whether destination needs to be created, if it does not exists.

Note

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.

Producer Configuration

Image Modified
Figure 78: Producer Configuration options

...

Message Type configuration

Image RemovedImage Added
Figure 89: Message Type Configuration options

...

  • Map Message
    A MapMessage object is used to send a set of name-value pairs. The names are String objects, and the values are primitive data types in the Java programming language. The names must have a value that is not null, and not an empty string. The entries can be accessed sequentially or randomly by name. The order of the entries is undefined. MapMessage inherits from the Message interface and adds a message body that contains a Map.
  • Byte Message as Base64 encoded Text
    Base64 encoding schemes are commonly used when there is a need to encode binary data that needs to be stored and transferred over media that are designed to deal with textual data. This is to ensure that the data remains intact without modification during transport. Base64 is commonly used in a number of applications including email via MIME, and storing complex data in XML.
  • Text Message
    Text message in any of the following formats:
    • Raw Text
    • Plain Text
    • XML Text: Selecting this option gives more options to provide a specific XSD Schema.

      Image Modified
      Figure 910: Text Message option in Message Type Configuration dialog box

...

Server connection can be tested from within the CPS by clicking on Test in the Managed Connection Factory panel.

Image RemovedImage Added
Figure 1011: Sample connection test result indicating success

...

Below configuration can be tested from within the CPS by clicking on test the Test button in the CPS panel.

Destination Configuration

Destination name - Primary Topic
Destination Type - Topic
Auto Create Destination - Enabled

Producer Configuration

Priority of message - 4
Time to Live - 0
Delivery Mode  - Non-persistent

Sample Input

Image RemovedImage Added
Figure 1112: Sample JMSIn input message

Output

Image RemovedImage Added
Figure 1213: Sample JMSIn output message

...

When the property Use Connection details from input is chosen, the following input schema with the element ConnectionFactorySettings, is generated. Properties that are used to create the connection are present under this element.


Figure 1314: Input schema with ConnectionFactorySettings

...

Configure the JMSIn as described in Configuration and Testing section and use feeder and display component to send sample input and check the response respectively.


Figure 1415: Demonstrating Scenario 1 with sample input and output

...

Adaptavist ThemeBuilder EngineAtlassian Confluence