JMS XML Input Adapter

Adapter type: jms_xml_in. The JMS XML Input adapter subscribes to XML-formatted text messages from a JMS queue or topic, and writes the messages as stream records.

Ensure that each message consists of an XML element. If opted, the element name corresponds to the stream name.

If you use the CCL ATTACH ADAPTER statement to attach an adapter, you must supply the adapter type.

Sample record format for the data file:
< StreamOut ESP_OPS="u" stringCol="aaa" int32Col="22" int64Col="222" doubleCol="2.200000" dateCol="2008-03-13T08:19:30" moneyCol="222.2222" timestampCol="2008-03-13T08:19:30.123" booleanCol="true" binaryCol="FF00FE05FF" bigdatetimeCol="2008-03-13T08:19:30.123456" intervalCol="64000" money1Col="922.0" money15Col="337.000000000000000" />
The stream contains these columns:
  • stringCol
  • int32Col
  • int64Col
  • doubleCol
  • dateCol
  • moneyCol
  • timestampCol
  • booleanCol
  • binaryCol
  • bigdatetimeCol
  • intervalCol
  • money1Col
  • money15Col
<RecordType name="StreamIn_rec">
	<Column datatype="string" key="true" name="stringCol" />
	<Column datatype="integer" key="false" name="int32Col" />
	<Column datatype="long" key="false" name="int64Col" />
	<Column datatype="float" key="false" name="doubleCol" />
	<Column datatype="date" key="false" name="dateCol" />
	<Column datatype="money" key="false" name="moneyCol" />
	<Column datatype="timestamp" key="false" name="timestampCol" />
	<Column datatype="boolean" key="false" name="booleanCol" />
	<Column datatype="binary" key="false" name="binaryCol" />
	<Column datatype="bigdatetime" key="false" name="bigdatetimeCol" />
	<Column datatype="interval" key="false" name="intervalCol" />
	<Column datatype="money(1)" key="false" name="money1Col" />
	<Column datatype="money(15)" key="false" name="money15Col" />                     
</RecordType>

The ESP-OPS attribute is optional. If omitted, the message is interpreted as an upsert. Ensure that the rest of the attributes have the same names as the corresponding stream columns, and that the columns with null values are omitted. This adapter supports schema discovery.

Property Label Description
Connection Factory

Property ID: connectionFactory

Type: string

(Required for adapter operation and schema discovery) Connection factory class name. Consult your third-party vendor documentation for specific formats. Here are some examples:
  • ActiveMQ – ConnectionFactory
  • TIBCO – QueueConnectionFactory
  • WebSphere MQ – MyMQConnFactory
No default value.
JNDI Context Factory

Property ID: jndiContextFactory

Type: string

(Required for adapter operation and schema discovery) Context factory for JNDI context initialization. Consult your third-party vendor documentation for specific formats. Here are some examples:
  • ActiveMQ – org.apache.activemq.jndi.ActiveMQInitialContextFactory
  • TIBCO – com.tibco.tibjms.naming.TibjmsInitialContextFactory
  • WebSphere MQ – com.sun.jndi.fscontext.RefFSContextFactory
No default value.
JNDI URL

Property ID: jndiURL

Type: string

(Required for adapter operation and schema discovery) JNDI URL. Consult your third-party vendor documentation for specific formats. Here are some examples:
  • ActiveMQ – tcp://server:61616
  • TIBCO – tibjmsnaming://server:7222
  • WebSphere MQ – file:/var/mqm/jndi/
WebSphere MQ is different as it requires a separate naming server to be configured with it. By default, WebSphere MQ only provides a file-based naming server. No default value.
Destination Type

Property ID: destinationType

Type: choice

(Required for adapter operation and schema discovery) Destination type.

Valid values are:
  • QUEUE
  • TOPIC
Default value is QUEUE.
Destination Name

Property ID: destinationName

Type: string

(Required for adapter operation and schema discovery) Destination name. No default value.

Subscription Mode

Property ID: subscriptionMode

Type: choice

(Optional) Specifies the subscription mode for TOPIC. Default value is NONDURABLE. Valid values are DURABLE and NONDURABLE.

Client ID

Property ID: clientID

Type: string

(Optional) Specifies the client identifier for a JMS client. Required for creating a durable subscription. No default value.

Subscription Name

Property ID: subscriptionName

Type: string

(Optional) Specifies a unique name identifying a durable subscription. No default value.

Batch Size

Property ID: batchsize

Type:uint

(Optional) Specifies number of records in a batch to commit in durable subscription mode. Default value is 1.

PropertySet

Property ID: propertyset

Type: string

(Advanced) Specifies the name of the property set. Property sets are reusable sets of properties that are stored in the project configuration file. Using these sets allows you to move adapter configuration properties out of the CCL file and into the CCR file. If you specify the same properties in the project configuration file and the ATTACH ADAPTER statement, the values in the property set override the values defined in the ATTACH ADAPTER statement. No default value.

Match Stream Name

Property ID: matchStreamName

Type: boolean

(Advanced) Ignore message if the XML element name does not match the source stream name. Default value is false.

Date Format

Property ID: dateFormat

Type: string

(Advanced) Date format. Default value is YYYY-MM-DDTHH:MM:SS.SSS.

Timestamp Format

Property ID: timestampFormat

Type: string

(Advanced) Timestamp format. Default value is YYYY-MM-DDTHH:MM:SS.SSS.

Known limitations:

Related concepts
Guaranteed Delivery
Related reference
Adapter Support for Schema Discovery