Many back-end systems that we wish to integrate with may not be exposed as logical services. This means that they have no generic interface to them. There is no Web Service, JMS, MQ or REST access. In order to interoperate with services like these, we would have to write connector code. Classically such connectors are called adapters. IBPM Advanced supplies a set of adapters that can be integrated with the SCA framework. These adapters are based on the Java Connector Architecture (JCA). The following section provides descriptions of these adapters and how they might be utilized.
Flat File Adapter
The Flat File adapter provides the ability to write to a file or read from a file from an SCA Import or Export. At a high level, the adapter provides the following functions:
Inbound processing is when the adapter is watching a folder for the arrival of new files. The adapter polls the directory on a configurable frequency. When a file is found, its content is read and turned into a BO. The transformation from physical file data to a BO is performed by a DataHandler.
Outbound processing is when the SCA module wishes to create, update, delete or list files. Again, BO to physical data transformation has to take place and again this is performed through a DataHandler.
Sample – Reading a Flat File with delimited data
Here is a sample walk through of reading a Flat File as input which contains delimited data.
We will start by considering a Business Object definition that looks as follows:
Our goal is to read a record from a file which looks like:
"Val1", "Val2", "Val3"
which will create an instance of the BO. We create an Inbound Flat File adapter which launches the wizard:
We next select the implementation of the Adapter to be used.
The adapter to be read is loaded into its own Java project. The adapter is loaded from a RAR file. We are asked to name the Workspace project that will hold the RAR.
Now we get into the core wizard screens of the Flat File adapter. There are a lot of properties here covering the myriad of permutations available from the adapter.
<To be written>
The JDBC adapter provides a service interface to database operations. The adapter utilizes the JDBC packages and hence the name of the adapter. In principle, any database that utilizes JDBC can be accessed through this adapter. This includes all the usual suspects.
We create an outbound adapter by selecting the outbound JDBC adapter entry:
We are then asked for the name of the project to be created that will contain the JDBC configuration and code: