FTP upload

FTP Upload

This producer writes content from the input ConnectMessage to a remote file on an FTP server.

As you select sFTP as FTP Type, the following extra fields will be added to the form.


In the table below, you will find an explanation of these properties. All attributes with a ‘*’ are mandatory.

There are three FTP types, FTP, SFTP (FTP over SSH) and FTPS (FTP over SSL). The SFTP attributes can only be used for SFTP connections. The other attributes are used for all FTP types.




By default, we fill this out with the technical ‘tag’, followed by a serial number. Changing the name is optional.


Check this box if you want this producer to be enabled.

FTP Type

Here, you can choose the type of FTP communication. You can choose between FTP SFTP or FTPS. By default this is set to FTP.

FTP Host*

Here, you can define the FTP server’s URL.

FTP Port

In this property, you can define the FTP’s port number. By default, depending on your FTP type, we use port 21 (FTP) or 22 (SFTP).

FTP Username*

Here, you put the username on the FTP server.

FTP Password

Here, you can define the password, corresponding with the username.

FTP Mode

Indicate here whether the FTP has to be in active or passive mode. You can choose between Active (0) or Passive (2). By default this is set to Active.

FTP FileType

Here, you can decide the type of file. You can choose between ASCII (0), EBCDIC (1) or Binary (2). By default ASCII is used.

FTP Buffer-Size

Here you can define the FTP buffer size. The default value is 10000.

Remote Directory

With this property, you can define the path to the remote directory, right after logging in. By default, the root will be used, which is defined at the FTP server.

Remote Directory From Header

Here, you can give the name of the MessageProperty, where a reference to the remote directory is located. With this you can dynamically specify this location.

You can specify this property through a Header-Enricher.

Remote File Separator

In this property, you can specify the kind of separator that will be used to display the paths. By default, “/” will be used.

MessagePart Name

This is the name of the MessagePart from the ConnectMessage, which content is written to the file. If ALL-XML is entered here, all MessageParts are written to the file. By default, the name “msgprt0” will be used.

File-Name Extension

Here, you can define the files’ extension. By default ‘.xml’ is used.

File-Name From Header

Name of the header property in the ConnectMessage which is used to generate the filename. If you enter file_name, the original file name is used. By default a unique ID is used.

Auto-Create Remote Directory

Automatically create the given directory on the FTP server if it does not exist yet. This can for instance happen when the FTP server is set so the location needs to exist before writing. By default this functionality is turned off (‘false’).

Use Temporary File-Name

Use a temporary filename for uploading the files to an FTP server.

By default this option is set to ‘false’.

SFTP Private-Key

This is a reference to the file with the private key.

SFTP Private-Key Pass-Phrase

This is the password corresponding to private key.

SFTP Server Alive Countmax

Here, you can define the amount of server alive messages, that can be sent without a reply, before being disconnected.

SFTP Server Alive Interval

This is the interval in milliseconds between two server alive messages.

SFTP Socket Time-Out

Here, you can define a socket timeout. The default value is ‘0’, which means there’s no timeout.


Description of the specific producer. This is for documentation purposes.


Advanced options

Attributes Description


Here, you can choose whether the MessagePart needs to be written serialized. By setting the MessagePart to ALL and Serialize to ‘true’, the ConnectMessage can be written serialized to file. By default this functionality is turned off.

FTPS with implicit encryption

As of version 3.5.0, if you choose implicit FTPS you can set the field Implicit TLS to true. This field will appear only if you choose FTPS. The other field is Session Reuse, this field tells you if you want to reuse the TLS session of this FTPS session.


Attribute Descrioption
Session Reuse This indicates the reuse of the TLS session when connecting over FTPS
Implicit TLS Enable implicit FTPS TLS


Memory usages and Java Heap Space errors

When requesting files from a server, keep track on the size of these files. When transfering files you need approximately 10 times the amount of memory available to the ConnectAgent. If you do not have this amount of memory available, you will get a Java Heap Space Error.