Before we can do anything, the FTP locations need to be set up. Assuming you want to use FileZilla, we need to access the Site Manager screen (it can be found in the File menu). Within the Site Manager, as shown in the following screenshot, click on the New Site button. This will create an entry in the left-hand tree of sites and the name will be highlighted ready for you to key over the default. You might want to give it a meaningful name.
Then we complete the General tab on the right with the details based on the service being used. The Host field will be the domain name. You will need to set the Logon Type to Normal and provide the credentials necessary. Click on OK. This will save your configuration so that, in future, you can just click on the site name to connect to it:
With the connection saved, re-enter the Site Manager, this time selecting the newly created connection. Then, click on the Connect button. Assuming all the configuration details are correct, you will get a connection to the FTP server. You will see information about the connection in the Status field. With a connection created, you need to populate the Remote site with a couple folders ready for us to use. In the Remote site panel, right-click and select the Create Directory option. Like any sort of file explorer/manager, a folder will be added ready for you to provide a name. To keep all of our content together, let's create a folder called tmp
in which we will put everything we need on the FTP server. Then double-click on the tmp
folder and repeat the process to create folders called source
, output
, and output2
.
In ICS, we should go into the Connections part of the Designer and start creating the necessary connections. Select the Create New Connections button to launch the list of possible connections and select the FTP option. As usual, the New Connection dialog will be displayed, using the following values in the dialog:
Property |
Value |
Connection Name |
|
Identifier |
This will be proposed based on the connection name and there is no need to change it unless you would like an alternate name. |
Connection Role |
Trigger and Invoke (so that in a later scenario we can use this connection as the triggering source). |
Description |
|
Click on the Create button. The Connection Properties process is very much the same as the process for a SOAP or REST connection. Populate the details as follows:
Property |
Value |
Email Address |
Your e-mail address. |
FTP Server Host Address |
This is the domain part of your FTP URL. For this book we have used https://oracle-integration.cloud/. Your hosting provider will typically tell you what to use. |
FTP Server Port |
FTP and SFTP use standard server ports in most cases (typically port |
SFTP Connection |
This indicates whether to use FTP or SFTP-we want to keep things simple, so select No. In a real-world application, it is best to work with the assumption that FTP must be secured. |
Host Key |
Leave blank-we are not going to use a host key. |
SSL Certificate |
Leave blank-we are not going to hold a local SSH certificate. |
FTP Server Time Zone |
Taking your local time and the timestamp of the file on the FTP server, you can deduce the probable time zone of the server. |
It is worth exploring why we need to provide a time zone for our source FTP server. The FTP process can be configured to run against a schedule. After several minutes or hours, ICS will check the FTP server for new content. To be able to do that, it needs to know the time zone so it can determine the relative time difference to spot which files have changed or been added. Often, servers will run on what is often referred to as Universal Time Code (UTC). UTC is the same as GMT. The important thing is that the time zone being used by the server does not shift to compensate for daylight savings. If the server does do that, then you risk duplicate changes being detected as system clocks shift for daylight savings, or miss data accordingly (moving clocks back will mean timestamped events will come back into the scope of the next query).
You will have noticed that both FTPS and SFTP can be supported-these are different approaches to securing FTP communications. To understand more about the differences, go to https://en.wikipedia.org/wiki/FTPS.
With the connection properties set, we can click on OK to continue. We need to complete the Security details for the FTP site; these details will match those entered into your FTP client (that is, FileZilla):
Property |
Value |
Security Policy |
As we have elected to use FTP, the drop-down option is only FTP Server Access Policy. |
User name |
The username for the FTP site-the same as used in the FTP client to connect. |
Password |
This is the FTP site password, which was also used in the FTP client. |
SSL Certificate Password |
Leave blank. |
With these values complete, we can close the dialog with the OK button. Test the connection (using the Test button). Assuming the test is successful, Save and press the Exit Connection button. Then navigate to the Integration part of the ICS tool.
The result should look something like the following:
With the FTP connector in place, we need a second connector to send the data to the integration with. As we have created services like this before, we are going to provide you with just the details. Locate the WSDL file called ICSBook-Ch9-AirportData-Client.WSDL
, which you will need to help establish the connector.
Property |
Value |
Connection Name |
|
Identifier |
As provided by ICS. |
Connection Role |
Trigger |
Description |
Provides an airport update. |
Email Address |
Your e-mail address. |
WSDL URL | Connection Properties |
Tick the Upload File, then use the File selection to upload the Close with the OK button. |
Security Policy | Credentials |
Set Security Policy to No Security Policy. Close the dialog with the OK button. |
With the information provided, click on the Test button, followed by the Save button, and then the Exit Connector button. With this done, we now have our connections ready.