Skip to main content
Skip table of contents

Using the URL Adapter with the FTP Protocol and Related Protocols

With the URL adapter, it is possible to get and put messages via the FTP protocol. The input and output of this adapter is always of type Blob to support all possible data types (e.g. binary for images, text with HTML code, XML messages, etc.).

FTP commands like RNFR, RNTO, etc. are also supported (see also http://www.faqs.org/rfcs/rfc959.html).

Differences between FTP and FTPS

A lot of times these protocols get confused and mixed up due to the similarity in function and names. The xUML Runtime supports the following file transfer protocols:

FTP

FTPS

File Transfer Protocol

FTP Secure and FTP-SSL

Classic insecure FTP

FTP over TLS/SSL

Plain FTP

Plain FTP over TLS/SSL channel

Username and password are sent as clear text over the network

User name and password are encrypted

Transfer is not encrypted

Transfer is encrypted

Uses TCP port 21

Uses TCP port 21 or 990

FTP via SSH is not supported by the xUML Runtime.

Transfer Mode

The transfer mode by default is set to binary, only the list command is transferred in ASCII mode.

You can change the transfer mode by using cURL option CURLOPT_QUOTE (see chapter Setting cURL Options on the URL Adapter). When using this option, the transfer mode is changed before any method is executed.
Using the command TYPE Ib in the command array, you can change this behavior and these commands are executed after any method.

Streaming FTP

When reading or writing files, the examples load the whole file into memory. This might cause problems if these files are big.

In order to avoid consuming too much memory the URL adapter offers the option to read and write data in little chunks. This mechanism is called streaming, since, after reading a small data chunk from the FTP server, it is immediately written to a file before doing the next read. For sending data, the mechanism works analogously.

Alias Attributes

Find below a list of relevant alias attributes, if the URL adapter is used with the FTP protocol. Default values used when an option is not explicitly set are written in bold.

Attribute

Description

Allowed Values / Examples

Standard

protocol

Transport protocol.

ftp

port

Machine port number the service is binding to. This port number can be given at service level only.

a valid port number (default: 21)

path

HTTP path for the SOAP request.

method

HTTP method of the URL adapter call. Default is "POST" if no value is specified.

one of: get (default), post, put, list

Advanced

user

Username/password.

options

Native cURL options as listed on Setting cURL Options on the URL Adapter.

Use one of the following syntax rules:

  • values separated by ',' in one line

  • values separated by ' ' in one line

  • list of tagged values

valid cURL options, e.g. CURLOPT_TIMEOUT=20

Proxy

proxyURL

URL of the proxy server.

proxyUser

Proxy user.

proxyType

Type of the proxy.

one of: HTTP, SOCKS5

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.