Component Integrator Preparation and Processing Task Flow
This topic describes the user preparations, processing task flow, and module
and server connections of the Component
Integrator architecture and components. The fundamental logical modules
of the Component Integrator itself are
shown in the regions labelled 6, 7, and 8 in the Component
Integrator task flow diagram (below), consisting of the following kinds
of modules:
- Component Manager
At runtime, the Component Manager manages the connections
to a work item that is requesting a component to the appropriate Service
Adapter, which must be one of the following:
- A Java Component adapter for integration
of an external Java component
- A JMS
adapter for placing messages on a JMS queue.
- Service Adapter (Java or JMS)
Service Adapters execute the interface to a JMS or
Java component. For a JMS Adapter, this always causes placement of a message
on a JMS queue and dispatches the associated work item. For a Java component,
after the Java Service Adapter executes a custom component interface, the
Java Service Adapter automatically waits for a response from the component,
updates the work item, and dispatches the work item to the next workflow
step.
The Component Integrator task
flow diagram includes other components in order to emphasize the connections
and interactions with other FileNet workflow-related components. For further
description of content of the task flow diagram, see the following:
- For descriptions of the basic components shown below, see Component
Integrator Basic Components.
- You can view a description of the flow of a Component Integrator-related
task shown in a numbered location in the diagram by the following means:
Component Integrator task flow diagram
Steps in the Flow of Component Integrator Processing Tasks
- Deploying a custom Java class.
- Configuring a Java Component Queue for deployed
custom Java component integration is the same as configuring a queue for any
work performer Employ the Configuration
Console to configure a Process Engine Java Component Queue with Operations.
Defining a Java Component Queue with operations consists of the following
activities:
- Associating Queue Operations with public methods of class. For a Component
Queue, these methods are the public methods of the external custom Java
component.
- Associating each parameter of the Java class method with a corresponding
parameter of an Operation that is defined for the Component Queue, in
cases where the method (and therefore the corresponding operation) is
defined with parameters.
Note Only one Java class can be associated with one Java Component
Queue, and the class must have a constructor that has no parameters.
Refer to defining
Component Queue operations for detailed information about defining Java
Component Queue Operations. For additional information about creating Component
Queues, refer to Creating
and configuring a component queue in the Setting Up the Component Integrator
section of this document.
- Configuring a JMS Queue Employ the Configuration
Console to configure a JMS Queue with Operations,
which hold message information. Refer to defining
Component Queue operations for detailed information about defining JMS
Queue Operations. JMS queue operations are defined with the JMS
operations dialog to have the following properties:
- A group of parameters that are associated with an operation name
(see below).
- An Operation name (also known as an event name), which is any
user-defined name that can designate the group of parameters. This name
may be used by the message consumer at runtime.
Refer to defining
Component Queue operations for detailed information about defining JMS
Queue Operations.
- Authoring a workflow You employ the Designer tool to perform the
following tasks:
- Creating a workflow on the Process Engine.
- Associating Operations for a Component Queue with steps of a workflow.
- Defining the parameter values of each Operation as an expression that
can include the work item (retrieved from the Component Queue) field values.
Note Refer to Component
step - general properties in the Help
for Process Designer online help for specific information on workflow
authoring with components that you have set up to work with the Component
Integrator.
- Configuring the Component Manager You employ the Task Manager tool
on your Process Engine server to access the Component Manager. Configure the
Component Manager to manage the processing connections between the Process
Engine and the service adapter for the Java or JMS component that is to be
integrated with the following procedure:
- Specifying the connection information for the Component Manager by configuring
the Component
Manager general properties and the Component
advanced properties.
- Specifying the location of the JAR files that contain any needed classes
associated with each Component Queue by configuring the Component
Manager required libraries. The location of the required libraries
is associated with the Component Queue (and service adapter) type as follows:
- For a Java Component Queue, the required library is the JAR file
that contains the Java class for the component that is to be integrated.
Additional required libraries would be JAR files that that provide
the Java class with any dependent modules it may need.
- For a JMS Component Queue, refer to the table of JNDI
Initial Context Factories in this document to determine your application
server's required libraries for a JMS component.
- If a required library JAR file is altered or added when the Component
Manager is running, the Component Manager must be stopped and re-started
before it can be used.
- Starting the Component Manager is described in the following references:
- Managing runtime connectivity The Component Manager starts
the connections for your components and manages the processing connections
between the Process Engine and the service adapters (Java or JMS) for each
integrated component. There is one instance of a service adapter for each
instance of an integrated component, and component authentication takes place
when the service adapter initializes. For an example and information on authenticating
a component for the Process and Content Engines, see the Component
Authentication Example in this document.
Note You can adjust previously set configuration properties with
component
advanced properties at runtime with the Component Manager, but changes
made to these settings will affect only the current instance of the component.
- Processing a work item in a Java Component step
When a work item is passed to a step that uses a Java Component Queue,
the Java Adapter performs the following tasks:
- Enabling a connection to the Java component (the Java class method is
specified by the Operation).
- Executing the interface associated with the Java component.
Note The Java Adapter passes the values of the Operation parameters
into the Java method that is associated with the Operation. The values
of the Operation parameters are defined by the associated Component Queue
configuration and the Designer-specified expression (the expression may
include field values from the retrieved work item).
- Waiting for the Java component to execute the Java component interface
and respond to the service adapter.
- Updating the work item field values.
- Dispatching the work item as follows:
- Saving updated field values.
- Completing
the step by dispatching the work item to a subsequent step.
- Processing a work item in a JMS Component step When a work item is
passed to a step that uses a JMS Component Queue, the JMS Adapter performs
the following tasks:
- Setting the values of the Operation parameters, which are defined by
the associated Component Queue configuration and the Designer-specified
expression (the expression may include field values from the retrieved
work item).
- Passing the values of the Operation parameters into the stepElement
object.
- Converting the stepElement object for that step into an XML String that
represents the stepElement object.
Note To see how JMS Component step values are represented by formatted
XML string elements, see the stepElement
XML schema definition file.
- Posting the XML String that represents the stepElement object on an
external JMS queue.
- Updating of the work item is not performed. For JMS Component
Queue processing, the field values of the work item are available for
reading, only.
- Completing the step
by dispatching the work item to a subsequent step.