Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The connection properties can be configured using the properties of Managed Connection Factory panel as shown in Figure 1the figure below.


Figure 1: Managed Connection Factory panel

...

Interaction Configurations

Image RemovedImage Added
Figure 13: Interaction Configurations

Source Settings

...

Pre Processing XSL Configuration

Pre Processing XSL configuration can be used to transform request message before processing it. Click the ellipses button against the property to configure the properties.

Refer to the Pre/Post Processing XSL Configuration section under the Common Configurations page for details regarding Pre Processing XSL configuration and Post Processing XSL configuration (below).

Post Processing XSL Configuration 

Post Processing XSL configuration can be used to transform the response message before sending it to the output port.

Process Message Based on Property

The property helps components to skip certain messages from processing.

Refer to the Process Message Based On a Property section under the Common Configurations page.

Request type

Specifies the type of user input to the adapter. This property provides two options:

...

When large files are being uploaded to the FTP server, the progress of the transfer can be obtained by specifying yes to this property. If this property is selected as Yes then the FTP adapter will send the notifications of the uploaded process at regular time intervals and this time interval can be specified by the property Monitor Progress interval (in ms).

Monitor Progress interval (in ms)

The example output of this notification time interval (in milliseconds) between any two progress notifications. This is visible when the Send Transfer Progress Notifications property is enabled.

The example output of Send Transfer Progress Notifications property is shown below. Now, observe Observe the BytesTransferred and TotalBytes fields in the output XML.


Figure 14: Sample output when 'Send Transfer Progress Notification' is set.

Other Source Settings Properties

Validate Input

...

If this property is enabled, FTPGet adapter will validate the input request with the input port XSD.

...

For more details, refer the Validate Input section section under Interaction Configurations in the Common Configurations page.

Cleanup resources (excluding connection) after each document

...

This closes all the resources except for connection used by the FTPPut adapter after every request. If the less processing time is more important than the less memory usage, then it is recommended to disable this property and vice versa.

For more details, refer to the respective section under in the Common Configurations page.

Delete file after transfer

...

Specifies if the remote file is to be deleted after it is completely uploaded.

Target Namespace

...

Target Namespace for the FTP request and response XML messages.

For more details, refer to the respective section under in the Common Configurations page.

Allow file patterns in Input request

...

Enabling this will allow file patterns in the input FTP request.

...

Check for File Locks during Transfer

Enabling this checks for File Locks during FTP transfer and throws an exception if a file required to be transferred via FTP is already in use in another process.

Monitoring Configuration

Please refer to the Monitoring Configuration section in Common Configurations page.

Elements to Decrypt

Select elements to decrypt in the Input Message.

Refer to the Encrypt Decrypt Configuration section in the Common Configurations page for details.

Elements to Encrypt

Select elements to encrypt in the Output Message.

Refer to the Encrypt Decrypt Configuration section in the Common Configurations page for details.

Monitoring Settings

Monitor Directory

This property can be used to make the FTPPut adapter poll a directory on the peer server's system(on which the component is launched) for files matching a particular pattern and upload all such files to the server. Enabling this property makes the FTPPut adapter poll the Source directory using the polling configuration specified in Scheduler Configurations panel. The user has to make sure that the Source directory exists.

...

  • If the upload is successful, the file is moved from working directory to the directory specified by property Processed directory.
  • If the upload is not successful, the file is moved from working directory to the directory specified by property Error directory.
  • When this property is disabled, the file is read directly from the directory specified by property Source directory.

 

Note
  • When the user has read-only permission to the file system, this property should not be enabled.
  • FTPPut takes care of the creation of Working directory, Processed directory and Error directory on the system where peer server is running (the peer on which the component is launched), if the directories do not exist Working, Processed and Error directories get created under the Current directory specified in Managed Connection Factory panel.
  • If the user does not prefer movement and the creation of these extra directories, then the user can disable the property Move to the working directory.

 

Working directory

This directory holds the files for which the file transfer is in progress.

...

  • Base Time: Base time in dd:MM:yyyy hh:mm format after which the changed files are to be uploaded

 

HIGHEST MODIFICATION TIME

...

Note

Description for the attribute Base Time is the same as explained in TIME filtering type.

 

MINIMUM AGE

Files whose last modification time is less than the current polling time minus the age is monitored. This ensures that the file modification time is at least Minimum Age earlier than the current time.


Figure 20: MINIMUM AGE filter type

...

If this property is enabled, then the FTPPut adapter will use a temporary target directory for intermediate processing. If you do not prefer to create an extra directory in the FTP server, disable this property.

 

Temporary target directory

This property is visible only when the property Use temporary target Directory is enabled. This is the directory on the FTP server, which the FTPPut component uses for intermediate processing during file downloads.

 

Note

This directory should not be same as Target directory.

...

  • Append date-time format postfix: When existing files in the Target directory are not to be overwritten, FTPPut provides the flexibility of uploading the content into a new file whose name is in the format <NameOfExistingFile_CurrentDateTime>. The format in which the date and time are to be appended should be specified as a value for this property.
    Example: If the date-time format is specified as MMddyyyyHHmmssss for the file Sample.txt, the target file created would be Sample_0305200811300013.txt.

    Note

    The default date-time format in CPS in is MMddyyHHmmss. Please configure the date-time format postfix in CPS appropriately to avoid remote file name clashes when using multiple sessions for FTPPut.

    Info
    iconfalse
    titleExample:

    Set the postfix value to "MMddyyHHmmssSSS" to have milliseconds precision of 3 digits.

  • Append counter: Enabling this property appends a counter along with the Date and Time to target file name when the target file is not to be overwritten.
    Example: A sample file name could be Sample_0305200811300013_0.txt.

...

Note

When the user does not have listing permissions on the server, it is recommended that this property is not enabled and to create directories manually.

Connection Timeout

To avoid an input/output operation getting hung for an indefinite time waiting for a request to return due to reasons like network fluctuations of the mounted directory, it is recommended to configure Connection Timeout in the runtime arguments. This is done by adding a property "-DCONNECTION_TIMEOUT" with the value (in milliseconds) as per requirement in Runtime Arguments in the Properties pane.

To configure Connection Timeout, 

...

In the Properties pane, click the Runtime Arguments tab and append the following values in the JVM_PARAMS text area:

Code Block
titleAppend to the JVM_PARAMS values
languageactionscript3
-DCONNECTION_TIMEOUT=3000

...

Info

After configuring Connection Timeout as above, the maximum time that the component waits for execution of each file will be 3000 milliseconds (3 seconds). If a CONNECTION_ERROR is thrown while the request is expecting to read N number of files, then the execution of all the remaining files for that request will be discarded. Once the CONNECTION_ERROR has occurred, the next request from the input port is processed in sequential order.

Note

If an error occurs while configuring -DCONNECTION_TIMEOUT in runtime arguments, then the microservice takes the default value 180000 milliseconds (3 minutes). For example, if -DCONNECTION_TIMEOUT is set to an empty value or if it throws NumberFormatException due to a typing error like "_DCONNECTION_TIMEOUT=30)0", then this default value is taken.

Input and Output

The input and output structures depend on the configuration of the property Request type.

When Request type is set to File, input and output structures are defined as shown in Figure 25 and Figure 26 figures below respectively.


Figure 26: Input schema structure for the request type - File

...

If text data has to be transferred, then the text content should be provided under the Data element in the input message and the attribute dataType should be set to Text.
If binary data has to be transferred, then the base64 encoded string created from binary data should be provided under the Data element in the input message and the attribute dataType should be set to Text.

Figure 27 and 28 Figures below show the input and output schema structures respectively when the request type is Data. The only difference in these schema structures against the ones for File request type is the replacement of the schema element LocalPath with Data. Please refer Table 1 and 2 for the remaining schema elements.

...


Figure 30: Input schema with ConnectionFactorySettings

Tip

An input/output operation may get hung for an indefinite time waiting for a request to return due to various reasons like network fluctuations of the mounted directory. To prevent this indefinite waiting time, it is recommended to configure Connection Timeout in the runtime arguments. Refer to the Configuring Connection Timeout section in the Common Configurations section.

Testing the Interaction Configurations

...


Figure 34: Input sample when Request type is File.

Sample Output


Figure 35: Output message received for the input

...


Figure 36: Input sample when Request type is Data

Sample Output


Figure 37: Output message received for input

Anchor
Scenario3
Scenario3
Scenario 3 (Scenario 1

...

using SFTP

...

protocol)

The following steps give a brief description of server settings and SFTP protocol. Here, you provide steps to test FTPPut adapter using vsftpd server which is installed in Linux.
Steps to produce:

...

Adaptavist ThemeBuilder EngineAtlassian Confluence