Inbound integration configuration XML elements

The following element types for inbound integrations are subtypes of the abstract <inbound-integration> type:

<file-integration>
File inbound integration
<jms-integration>
JMS inbound integration
<custom-integration>
Custom inbound integration, directly implementing the InboundIntegrationStartablePlugin or InboundIntegrationMessageReply interface

<inbound-integration> XML element attributes and subelements

The abstract inbound integration XML element has the following attributes.

Attribute name

Type

Required

Default value

Description

name

string

A unique identifying name for this inbound integration in the inbound-integration-config.xml file.

The name attribute must match the value of the integrationservice plugin parameter in the Plugins registry for all registered plugin implementations of any inbound integration interfaces. In the Plugins registry, add the plugin parameter integrationservice and set to the value of this unique identifying name.

disabled

boolean

false

Determines whether to disable this inbound integration. Set to true to disable the inbound integration.

env

string

Sets a configuration that is valid only for a specific server environment or set of server environments. You can specify multiple values for this attribute by using a comma-separated list.

The abstract inbound integration XML element has the following subelements, in the order shown.

Subelement name

Type

Required

Default value

Description

threadpool

string

The unique name of a thread pool as configured earlier in the file.

For testing inbound JMS integration in dev mode on the Jetty platform, use an unmanaged thread pool, not a thread pool of type j2ee-managed-threadpool.

pollinginterval

string

60

The time interval in seconds between polls, though the algorithm interacts with the throttle interval and the ordered parameter.

throttleinterval

string

60

The time interval in seconds after polling, though the algorithm interacts with the polling interval and the ordered parameter.

ordered

string

true

By default, the inbound file integration handles files in a single thread sequentially.

To handle multiple files at a time in parallel in multiple threads on this server, set this value to false and ensure that the thread pool has at least two threads.

For file inbound integration, the order of the processing of individual files in the directory is undefined. Never rely on the order being any particular order, such as alphabetic or creation date.

stoponerror

string

true

If true, PolicyCenter stops the integration if an error occurs. For JMS and custom implementations, the behavior depends on the type of the implementation and on the value of the ordered parameter.

If not true, PolicyCenter skips the item if an error occurs. Be sure to log any errors or notify an administrator.

transactional

string

false

Set this parameter to true if your plugin supports transaction rollback. In this case, your plugin must implement the TransactionalWorkSetProcessor interface in the gw.api.integration.inbound.work package.

osgiservice

string

true

Always set to true. This parameter is for internal use. This value is independent of whether you choose to register your handler class as an OSGi plugin.

<file-integration> XML element subelements

The file inbound integration XML element has the following additional subelements, in the order shown.

Subelement name

Type

Required

Default value

Description

traceabilityidcreationpoint

string

INBOUND_INTEGRATION_FILE

The value is specified by the constants in gw.logging.TraceabilityIDCreationPoint. As well as the default value, the following value is also valid:

  • OUTBOUND_MESSAGE_REPLY

pluginhandler

string

The name in the Plugins registry for an implementation of the InboundIntegrationHandlerPlugin plugin interface. The value is the .gwp file name, not the implementation class name.

processingmode

string

line

To process one line at a time, set to line. In your handler class in the process method, you must downcast to String.

To process one file at a time, set to file. In your handler class in the process method, you must downcast to java.nio.file.Path.

incoming

string

The full path of the configured incoming events directory.

The value of this element must not be empty.

processing

string

The full path of the configured processing events directory.

The value of this element must not be empty.

error

string

The full path of the configured error events directory.

The value of this element must not be empty.

done

string

The full path of the configured done events directory.

The value of this element must not be empty.

charset

string

UTF-8

The character set that the inbound file uses.

The value of this element must not be empty.

createdirectories

boolean

false

If true, PolicyCenter creates the incoming, processing, error, and done directories if they do not already exist. If errors occur that prevent creation of any directories, the server does not start.

If false, PolicyCenter requires that all of these directories must already exist. If any directories do not already exist, the server does not start.

For better security, set to false.

<jms-integration> XML element subelements

The JMS inbound integration XML element has the following additional subelements, in the order shown.

Subelement name

Type

Required

Default value

Description

traceabilityidcreationpoint

string

INBOUND_INTEGRATION_JMS

The value is specified by the constants in gw.logging.TraceabilityIDCreationPoint. As well as the default value, the following value is also valid:

  • OUTBOUND_MESSAGE_REPLY

pluginhandler

string

The name in the Plugins registry for an implementation of the InboundIntegrationHandlerPlugin plugin interface. The value is the .gwp file name, not the implementation class name.

The value of this element must not be empty.

connectionfactoryjndi

string

The application server configured JNDI connection factory.

The value of this element must not be empty.

destinationjndi

string

The application server configured JNDI destination.

The value of this element must not be empty.

user

string

The default value is an empty string.

Username for authenticating on the JMS queue.

password

string

The default value is an empty string.

Password for authenticating on the JMS queue.

durablesubscription

string

The default value is an empty string.

Reserved for future use.

nolocal

boolean

false

Reserved for future use.

messageselector

string

The default value is an empty string.

Reserved for future use.

messagereceivetimeout

unsignedInt

15

The maximum time in seconds to wait for an individual JMS message.

batchlimit

unsignedInt

5

The maximum number of messages to receive in a poll interval.

jndi-properties

A sequence of <jndi-property> elements

A sequence of arbitrary JNDI properties that you define.

jndi-property

keyvaluepair

An arbitrary JNDI property that you define. Define key and value subelements that contain key/value pairs.

<custom-integration> XML element subelements

The custom inbound integration XML element has the following additional subelements, in the order shown.

Subelement name

Type

Required

Default value

Description

traceabilityidcreationpoint

string

INBOUND_INTEGRATION_CUSTOM

The value is specified by the constants in gw.logging.TraceabilityIDCreationPoint. As well as the default value, the following values are also valid:

  • INBOUND_INTEGRATION_FILE
  • INBOUND_INTEGRATION_JMS
  • OUTBOUND_MESSAGE_REPLY

workagentimpl

string

The fully qualified name, including the package, of the InboundIntegrationStartablePlugin or InboundIntegrationMessageReply implementation class.

If your class is a Gosu class, you must also include the suffix .gs. For example: mycompany.integ.MyInboundPlugin.gs.

The value of this element must not be empty.

parameters

A sequence of parameter elements

A sequence of arbitrary parameters that you define. For example, you can use these parameters to store server names and port numbers. For each parameter, create a parameter subelement.

The plugin interface has a setup method. These parameters are in the java.util.Map that PolicyCenter passes to that initialization method.

parameter

keyvaluepair

An arbitrary parameter that you define. Define key and value subelements that contain key/value pairs.