FTP

In this section:

Reference:

A well-established standard for exchanging files over TCP/IP networks, File Transfer Protocol (FTP) is also designed for use over networks other than TCP/IP and for exchanging files with a broad variety of machines. FTP works in a client-server fashion, where the local client program connects to the remote FTP system. The client initiates commands to receive or send messages, and the server responds.


Top of page

x
File Transfer Protocol Listener Properties

The following table lists and describes the FTP listener properties. For instructions on creating a listener, see Configuring Listeners.

Property

Description

Host Name (required)

The FTP host to be accessed to search for the document.

User Name (required)

The user ID on the FTP host.

Password (required)

The user password on the FTP host.

Account Name

The name of the account on the FTP server. This is optional, depending on the FTP server.

Input Path

The directory on the FTP host from which to retrieve files. Specify the file name or use a DOS-style pattern. Do not use suffix in.

Destination Directory

The directory on FTP host to return response to.

Append

If the destination file exists, then append on PUT.

Pending Directory

The local directory where pending requests are held.

Suffix In

This limits input files to those with this extension, for example, xml. Do not insert a period (.) before the suffix. A dash (-) indicates no extension, that is, the field is not used.

Duration

The maximum time that a document can remain in the retry pending queue.

Retry

The interval between retrying pending requests.

Quote Command

The entered command is sent as typed, BEFORE any data transfer begins. Following login to the FTP server, a command is sent to the server, if it is configured. This is often used to accomplish a secondary login.

Mode

In ASCII mode, conversions are done (EBCDIC to ASCII and vice versa). In BINARY mode, the data remains unchanged.

Payload Type (required)

Determines what form of payload should be processed. Select one of the following options from the drop-down list:

  • Data. The file contents are passed. This is the default.
  • Signal. A signal document containing the file name is passed. The file contents are not read into memory.

    Note: If Signal is set, then a value for the Local Store Directory parameter must be provided.

Local Store Directory

The directory on the iWay server where files are saved. You must specify a directory path only if the Payload Type parameter is set to Signal.

Remove locally stored files

If set to true, the FTP listener deletes the file stored locally after it is processed. This parameter requires a directory path to be specified for the Local Store Directory parameter.

Do not unzip ZIP files

Pass ZIP files as a single file for processing (requires ACCEPT FLAT turned on).

The default is to unzip ZIP files and process the contents of the ZIP files individually.

Socket Timeout

The timeout in seconds. With this option set to a non-zero timeout, a read() call on the Socket will block for only this amount of time. If the timeout expires, a java.net.SocketTimeoutException is raised.

Use Passive Command

If set to true, then use the PASV command. If set to false, them use the PORT command.

Bad File List

If set to true, then maintain a list of files with errors, preventing them from being re-accessed. If set to false, files will not be retried.

Delete After Read

Some FTP servers, such as VANs, automatically delete the file after read. In this case set this to false. If the file is not deleted, it will be reread at each FTP cycle.

File Protect

Emits a temporary name and then renames it to the desired name.

Security

Secure Control Connection

If set to true, then the user ID and password are transferred in a secure manner. If client authentication is required, you may be required to configure the keystore under the HTTPS section of the system properties.

Note: If the keystore is configured in the system properties, ensure it has the CA certificate or the client certificate of the server to which you are connecting.

If the keystore is not configured in the system properties, the default truststores under /lib/security/cacerts is used.

SSL Security

Select one of the following FTP server connection types from the drop-down list:

  • unknown. Defaults to explicit security then fails over to implicit security.
  • explicit. In order to establish the SSL link, explicit security requires that the FTP client issue a specific command to the FTP server after establishing a connection. The default FTP server port is used.
  • implicit. Implicit security automatically begins with an SSL connection as soon as the FTP client connects to an FTP server. In implicit security, the FTP server defines a specific port for the client (typically 990) to be used for secure connections.

Keystore Security Provider

Enter the iWay Keystore Security Provider name. If this component is secure and Keystore Security Provider is left blank, the default Keystore Security Provider is used.

Secure Data Connection

If set to true, transfers data in a secure manner. Used in conjunction with Secure Control Connection.

Use 128-bit Encryption

If set to true, enforces use of 128-bit encryption.

Security Protocol

The protocol to enable security. Security protocol values include:

  • SSL. Supports some version of SSL. May support other versions.
  • SSLv2. Supports SSL version 2 or higher.
  • SSLv3. Supports SSL version 3. May support other versions.
  • TLS. Supports some version of TLS. May support other versions.
  • TLSv1. Supports TLS version 1. May support other versions.

SITE

Starting SITE command

The SITE command to issue before the transfer of data.

Successful SITE command

The SITE command to issue after the successful transfer of data.

Error SITE command

The SITE command to issue if the transfer of data fails.

Other

Whitespace Normalization

Specifies how the parser treats whitespace in element objects. Select preserve (default) to turn off all normalization as prescribed by the XML Specification. Select condense to remove extra whitespaces in pretty printed documents and for compatibility with earlier versions.

Accepts non-XML (flat) only

If set to true, then the listener expects flat (non-XML) files. Preparsers do not run.

Optimize Favoring

Use this option to customize how the listener performs. For smaller transactions, select performance. For large input documents that could monopolize the amount of memory used by iWay Service Manager, select memory.

Multithreading

This option indicates the number of worker threads (documents or requests) that iWay Service Manager can handle in parallel. Setting this to a value of greater than 1 enables the listener to handle a second request while an earlier request is still being processed. The total throughput of a system can be affected by the number of threads operating. Increasing the number of parallel operations may not necessarily improve throughput.

Default: 1

Max Value: 99

Execution Time Limit

The maximum time that a request may take to complete. Used to prevent runaway requests. Any request that takes longer to complete than this value will be attempted to be terminated. (See the kill interval for related information in Global Options.)

Polling Interval

The maximum wait interval (in seconds) between checks for new requests or commands. The higher this value, the longer the interval, and the fewer system resources that are used. The side effect of a high value is that the worker thread will not be able to respond to a stop command.

Default: 2.0 seconds.

Default Java File Encoding

The default encoding if incoming message is not self-declaring (that is, XML).

Agent Precedence

This option sets the order by which iWay Service Manager selects agents. iWay Service Manager selects the agent or agents to process the document by searching through the configuration dictionary. Usually, it looks for a document entry in the configuration and when a match is found, the agent specified in that document entry is selected. If a matching document entry is not found, or no agent is specified, the engine looks in the input protocol configuration (listener). To have the processing agent taken directly from the listener (thus ignoring the document entry), use <listener> overrides <document>.

Possible values are <document> overrides <listener> and <listener> overrides <document>.

The default value is: <document> overrides <listener>

Always reply to listener default

If set to true, then the default reply definition is used in addition to the defined reply-to and error-to destinations.

Error documents treated normally

If set to true, then the error documents are processed by any configured preemitters.

Listener is Transaction Manager

If set to true, then the agents run within a local transaction managed by the listener.

Record in Activity Log(s)

If set to true, activity on this channel will be recorded in the activity logs. If set to false, then the activity will not be recorded.

Note: The FTP listener supports streaming. Streaming is used for large documents or documents for which the application needs to split the input into sections under the same transaction. For more information on streaming and configuring streaming preparsers, see the iWay Service Manager Component and Functional Language Reference Guide.



x
Reference: File Transfer Protocol Listener Special Registers

The following table lists and describes the special registers (SREGs) available on the File Transfer Protocol Listener.

Name

Level

Type

Description

iwayconfig

System

String

The current active configuration name.

iwayhome

System

String

The base at which the server is loaded.

iwayworkdir

System

String

The path to base of the current configuration.

msgsize

Document

Integer

The physical length of the message payload.

name

System

String

The assigned name of the master (listener).

protocol

System

String

The protocol on which the message was received.

source

Document

String

The full name of the input file.

basename

Document

String

The file name without an extension.

extension

Document

String

The extension to the file name (mime type).

filename

Document

String

The file name using the basename.extension format.

parent

Document

String

The path to the file name.

tid

Document

String

Unique transaction ID.



x
Configuring an FTP Emitter

Messages are sent to particular destinations at the completion of a workflow. The state of the document determines which destination is used. The order in which the destinations are used cannot be predicted.

Note: Configuring an FTP emitter is not required if the outlet (emitter) protocol is the same as the inlet (listener) protocol.

To route an output document or error message to a protocol other than that of the outlet (listener) used, you must configure an emitter. For example, if an application can send input over MQSeries, but you want to route the output to an FTP destination.



x
FTP Emitter Properties

The following table lists and describes the FTP emitter properties. For instructions on creating an emitter, see Configuring Emitters.

Property

Description

Destination (required)

The file@host. If an asterisk (*) is entered, a time stamp is substituted for the file name.

User Name (required)

The user ID on the FTP host.

Password (required)

The user password on the FTP host.

Account Name

Some FTP servers require an ACCT command as part of their login credential exchange. If configured, this information is sent by the ACCT command when the login is attempted.

Mode

In ASCII mode, conversions are done (EBCDIC to ASCII and vice versa). In BINARY mode, the data remains unchanged.

Socket Timeout

The time, in seconds, in which a read() call on the socket blocks. If the timeout expires, a java.net.SocketTimeoutException is raised.

Rename To

The name to give the uploaded file after the upload is complete. Use an asterisk (*) in the name to be replaced by time stamp and # by a sequential counter, for example:

*.msg.someFolder/###.msg

Append

If a destination file exists, the information is appended to that file. Otherwise, a new file is stored.

Quote Command

The entered command is sent as typed, BEFORE any data transfer begins. Following login to the FTP server, if this is configured it is a command to be sent to the server. Often this is used to accomplish a secondary login.

File Protect

Emits a temporary name and then renames it to the desired name.

Starting SITE command

The SITE command to issue before the transfer of data.

Successful SITE command

The SITE command to issue after the successful transfer of data.

Error SITE command

The SITE command to issue if the transfer of data fails.

Security

Secure Control Connection

Use a secure control connection, for example, transfer user ID and password securely. Data transfer will not be secured. You may need to configure the keystore under the HTTPS section of the system properties if client authentication is required.

Note: If the keystore is configured in system properties, make sure it has the CA certificate or the client certificate of the server to which you are connecting. If the keystore is not configured in system properties, the default truststore located under <JRE_HOME>/lib/security/cacerts is used.

SSL Security

Select one of the following FTP server connection types from the drop-down list:

  • unknown. Defaults to explicit security then fails over to implicit security.
  • explicit. In order to establish the SSL link, explicit security requires that the FTP client issue a specific command to the FTP server after establishing a connection. The default FTP server port is used.
  • implicit. Implicit security automatically begins with an SSL connection as soon as the FTP client connects to an FTP server. In implicit security, the FTP server defines a specific port for the client (typically 990) to be used for secure connections.

Keystore Security Provider

Enter the iWay Keystore Security Provider name. If this component is secure and Keystore Security Provider is left blank, the default Keystore Security Provider is used.

Secure Data Connection

This determines whether to use a secure data connection (transferring data securely). This is used in conjunction with Secure Control Connection.

Use 128-Bit Encryption

This enforces the use of 128-bit encryption.

Security Protocol

The security protocol. Available options are:

  • SSL. Supports some version of SSL. May support other versions.
  • SSLv2. Supports SSL version 2 or higher.
  • SSLv3. Supports SSL version 3. May support other versions.
  • TLS. Supports some version of TLS. May support other versions.
  • TLSv1. Supports TLS version 1. May support other versions.



x
Troubleshooting for FTP

The following table describes an error that you may encounter when using an FTP listener.

Error

Reason

Solution

Unable to successfully 
log in to FTP: [line 
3]

System path was unable to log on to the FTP host with the supplied host, user ID, and password combination.

Verify that the host, user ID, and password combination is correct.


iWay Software