JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
Oracle Java CAPS Adapter for Batch User's Guide     Java CAPS Documentation
search filter icon
search icon

Document Information

Oracle Java CAPS Adapter for Batch User's Guide

About the Adapter for Batch

Batch Adapter OTDs

Additional Licensing Considerations

Installing the Batch Adapter

Batch Adapter System Requirements

Installing the Batch Adapter

Monitoring and Alerts

Using the Enterprise Manager

Installing Adapter Enterprise Manager plug-ins

Batch Adapter Alert Codes

Configuring the Batch Adapter

Creating and Configuring Batch Adapters

Selecting a Batch External Application

Modifying the Adapter Properties

Using the Properties Editor

Batch Adapter Properties

BatchFTP Adapter Connectivity Map Properties

Pre Transfer (BatchFTP Connectivity Map)

SOCKS (BatchFTP Connectivity Map)

FTP (BatchFTP Connectivity Map)

FTP Raw Commands (BatchFTP Connectivity Map)

Sequence Numbering (BatchFTP Connectivity Map)

Post Transfer (BatchFTP Connectivity Map)

Target Location (BatchFTP Connectivity Map)

SSH Tunneling (BatchFTP Connectivity Map)

Additional SSH-supporting Software

Port-forwarding Configuration

General Settings (BatchFTP Connectivity Map)

BatchFTP Adapter Environment Properties

SOCKS (BatchFTP Environment)

FTP (BatchFTP Environment)

General Settings (BatchFTP Environment)

SSH Tunneling (BatchFTP Environment)

Connection Pool Settings (BatchFTP Environment)

Connection Retry Settings (BatchFTP Environment)

BatchFTPOverSSL Adapter Connectivity Map Properties

Pre Transfer (BatchFTPOverSSL Connectivity Map)

FTP and SSL Settings (BatchFTPOverSSL Connectivity Map)

Post Transfer (BatchFTPOverSSL Connectivity Map)

Firewall Settings (BatchFTPOverSSL Connectivity Map)

Synchronization (BatchFTPOverSSL Connectivity Map)

BatchFTPOverSSL Adapter Environment Properties

FTP and SSL Settings (BatchFTPOverSSL Environment)

Firewall Settings (BatchFTPOverSSL Environment)

General Settings (BatchFTPOverSSL Environment)

Connection Pool Settings (BatchFTPOverSSL Environment)

Connection Retry Settings (BatchFTPOverSSL Environment)

BatchSCP Adapter Connectivity Map Properties

SCP Settings (BatchSCP Connectivity Map)

Firewall Settings (BatchSCP Connectivity Map)

Synchronization (BatchSCP Connectivity Map)

BatchSCP Adapter Environment Properties

SSH Settings (BatchSCP Environment)

Firewall Settings (BatchSCP Environment)

General Settings (BatchSCP Environment)

Connection Pool Settings (BatchSCP Environment)

Connection Retry Settings (BatchSCP Environment)

BatchSFTP Adapter Connectivity Map Properties

Pre Transfer (BatchSFTP Connectivity Map)

SFTP Settings (BatchSFTP Connectivity Map)

Post Transfer (BatchSFTP Connectivity Map)

Firewall Settings (BatchSFTP Connectivity Map)

Synchronization (BatchSFTP Connectivity Map)

BatchSFTP Adapter Environment Properties

SFTP Settings (BatchSFTP Environment)

Firewall Settings (BatchSFTP Environment)

General Settings (BatchSFTP Environment)

Connection Pool Settings (BatchSFTP Environment)

Connection Retry Settings (BatchSFTP Environment)

BatchLocalFile Connectivity Map Properties

Pre Transfer (BatchLocalFile Connectivity Map)

Sequence Numbering (BatchLocalFile Connectivity Map)

Post Transfer (BatchLocalFile Connectivity Map)

General Settings (BatchLocalFile Connectivity Map)

Target Location (BatchLocalFile Connectivity Map)

BatchLocalFile Environment Properties

General Settings (BatchLocalFile Environment)

Connection Pool Settings (BatchLocalFile Environment)

BatchRecord Connectivity Map Properties

General Settings (BatchRecord Connectivity Map)

Record (BatchRecord Connectivity Map)

BatchRecord Environment Properties

Connection Pool Settings (BatchRecord Environment)

BatchInbound Connectivity Map Properties

Settings (BatchInbound Connectivity Map)

BatchInbound Environment Properties

MDB Settings (BatchInbound Environment)

Using FTP Heuristics

FTP Heuristics

Platform Selection

IBM IP Stack Required for MVS Sequential, MVS GDG, and MVS PD

Creating User Defined Heuristic Directory Listing Styles

Considerations

Heuristics Configuration File Format

FTP Heuristics Configuration Parameters

Commands Supported by FTP Server

Header Lines To Skip

Header Indication Regex Expression

Trailer Lines To Skip

Trailer Indication Regex Expression

Directory Indication Regex Expression

File Link Real Data Available

File Link Indication Regex Expression

File Link Symbol Regex Expression

List Line Format

Valid File Line Minimum Position

File Name Is Last Entity

File Name Position

File Name Length

File Extension Position

File Extension Length

File Size Verifiable

File Size Position

File Size Length

Special Envelope For Absolute Path Name

Listing Directory Yields Absolute Path Names

Absolute Path Name Delimiter Set

Change Directory Before Listing

Directory Name Requires Terminator

FTP Configuration Requirements for AS400 UNIX (UFS)

Dynamic Configuration

Dynamic Configuration Sample

Dynamic Configurable Parameters for Secure FTP OTDs

Configuration Parameters that Accept Integer Values

Understanding Batch Adapter OTDs

Overview of the Batch OTDs

Types of Batch Adapter OTDs

OTD Functions

BatchFTP OTD

BatchFTP OTD Structure

Configuration Node

Client and Provider Nodes

BatchFTP OTD Node Functions

Using the BatchFTP OTD

Handling Type Conversions

Code Conversion and Generation

Type Conversion Troubleshooting

Essential BatchFTP OTD Methods

Sequence Numbering

Additional FTP File Transfer Commands

BatchFTPOverSSL OTD

BatchFTPOverSSL OTD Structure

BatchFTPOverSSL OTD Node Functions

Configuration Node

BatchFTPOverSSL Client Node

BatchSFTP OTD

BatchSFTP OTD Structure

BatchSFTP OTD Node Functions

Configuration Node

BatchSFTP Client Node

BatchSCP OTD

BatchSCP OTD Structure

BatchSCP OTD Node Functions

Configuration Node

BatchSCP Client Node

BatchLocalFile OTD

BatchLocalFile OTD Structure

Configuration Node

Client Node

BatchLocalFile OTD Node Functions

Using the BatchLocalFile OTD

BatchLocalFile Specific Features

Pre/Post File Transfer Commands

Pre Commands

Post Commands

Essential BatchLocalFile OTD Methods

Resume Reading Feature

General Operation

Step-by-step Operation

Operation Without Resume Reading Enabled

To Avoid Storing a Resume Reading State

Data Stream-Adapter Provider

Sequence Numbering

Generating Multiple Files with Sequence Numbering

Handling Type Conversions

Recommended Practice

Example 1: Parsing a Large File

Example 2: Slow, Complex Query

OTD Limitations

BatchRecord OTD

BatchRecord OTD Structure

OTD Structure and Operation

Record-processing OTD Node Functions

Using the Record-processing OTD

Using get() and put()

Choosing the Parse or Create Mode

Creating a Payload

Parsing a Payload

Fully Consuming a Payload

Using Record Processing with Data Streaming

BatchInbound OTD

BatchInbound OTD Structure

Using Regular Expressions

Regular Expressions: Overview

Entering Regular Expressions

Regular Expressions and the Adapter

Rules for Directory Regular Expressions

Restrictions for Using Regular Expressions as Directory Names

Regular Expression Directory Name Examples

Using Name Patterns

Types of Name Patterns

Resolving Names

Date/time Format Syntax

Additional Batch Adapter Features

What's in This Chapter

Streaming Data Between Components

Introduction to Data Streaming

Overcoming Large-file Limitations

Using Data Streaming

Data-streaming Operation

Data Streaming Versus Payload Data Transfer

Data Streaming Scenarios

Consuming-stream Adapters

Stream-adapter Interfaces

Inbound Transfers

Outbound Transfers

SOCKS FTP Support

SOCKS

SOCKS: Overview

SOCKS Proxy Server

SOCKS and the Batch Adapter

Negotiation Methods

SOCKS Configuration Properties

SSH Tunneling Support

SSH Tunneling: Overview

Additional Software Requirements

SSH Tunneling and the Batch Adapter

Enabling SSH Tunneling

Using an Existing Channel

Using an Internal Channel

Port-forwarding Configuration

SSH Tunneling Configuration Parameters

Streaming Data Between Components

Components in the Batch Adapter implement a feature for data streaming. This chapter explains data streaming, how it works, and how to use it with the adapter and Java CAPS. it includes the following sections:

Introduction to Data Streaming

Data streaming provides a means for interconnecting any two components of the adapter by means of a data stream channel. This channel provides an alternate way of transferring the data between the Batch Adapter components. Streaming is available between BatchLocalFile and BatchFTP, or BatchLocalFile and BatchRecord.

Each OTD component in the adapter has a Payload node. This node represents the in-memory data and is used when the data is known to be relatively small in size or has already been loaded into memory. The node can represent, for example, the buffer in the record-processing OTD, as it is being built or parsed, or the contents of a file read into memory.

Instead of moving the data all at once between components in memory, you can use a data-stream channel to provide for streaming the data between them a little at a time, outside of Java CAPS.

Data streaming was designed primarily to handle large files, but you can use it for smaller data sizes as well.

Use the Java CAPS Collaboration Rules Editor in NetBeans to set up data-streaming operations. The rest of this section explains the data streaming feature and how to set it up.


Note - Payload-based and streaming-based transfers are mutually exclusive. You can use one or the other but not both for the same data.


Overcoming Large-file Limitations

The primary advantage of using data streaming is that it helps to overcome the limitations of dealing with large files. For example, if you have a 1-gigabyte file that contains a large number of records, you need a large amount of resources to load the payload into memory just to parse it.

Streaming allows you to read from the file, little by little, using a data-streaming mechanism. This way, you do not need to load the file into the Java CAPS system’s memory. Using streaming is not as fast as using in-memory operations, but it is far less resource-intensive.

Using Data Streaming

Each data-streaming transfer involves two OTDs in a Collaboration as follows:

This section explains how the two data-streaming OTDs operate to effect the transfer of data.

Data-streaming Operation

Each of the OTDs in the Batch Adapter exposes stream adapter nodes that enable any OTD to participate in data-streaming transfers. The nodes are named InputStreamAdapter and OutputStreamAdapter. You can associate the stream adapters by using the drag-and-drop features of NetBeans.

The InputStreamAdapter (highlighted) and OutputStreamAdapter nodes in the OTD are used for data streaming. This feature operates as follows:

The local file OTD is always the stream provider, and the FTP and record-processing OTDs are the consumers.


Note - For an explanation of the adapter’s different types of OTDs, see Understanding Batch Adapter OTDs .


Data Streaming Versus Payload Data Transfer

Use of the InputStreamAdapter and OutputStreamAdapter nodes is an alternative to using the Payload node as follows:

All operations that, in payload data transfer, read from the Payload node require the InputStreamAdapter node when you are setting up data streaming. Using the same logic, all operations that, in payload data transfer, write to the Payload node require OutputStreamAdapter node for data streaming.

Do not confuse the stream adapter nodes with the get() and put() methods on the OTDs. For example, the BatchFTP OTD’s client interface get() method writes to the Payload node during a payload transfer, so it requires an OutputStreamAdapter node to write to for data streaming. In contrast, the record-processing OTD’s get() method reads from the Payload node during a payload transfer, so for data streaming, get() requires an inputStreamAdapter node to read from.

Data Streaming Scenarios

The four typical data-streaming scenarios are:

Consuming-stream Adapters

This section explains how to use consuming-stream adapters.

To obtain a stream

To Use a Stream

To Dispose of a Stream

  1. Release any references to the stream.
  2. Release the stream (XX) using the releaseXXStream() method. Some of the OTDs support post-transfer commands. The Success parameter indicates whether these commands are executed. Do not close the stream.

Stream-adapter Interfaces

This section provides the Batch Adapter’s OTD stream-adapter Java interfaces. This information is only for advanced users familiar with Java programming, who want to provide custom OTD implementations for stream-adapter consumers or providers.

Inbound Transfers

The following Java programming-language interface provides support for inbound transfers from an external system:

public interface com.stc.eways.common.eway.streaming.InputStreamAdapter {
public java.io.InputStream requestInputStream() throws StreamingException;
public void releaseInputStream(boolean success) throwsStreamingException;
}

Outbound Transfers

The following Java interface provides support for outbound transfers to an external system:

public interface com.stc.eways.common.eway.streaming.OutputStreamAdapter {
public java.io.OutputStream requestOutputStream() throws StreamingException;
public void releaseOutputStream(boolean success) throws StreamingException;
}