Overview

Secure FTP Applet is a FTP client component that runs within your web browser. It is designed to let non-technical users exchange data secureiy with an FTP server. Using Secure FTP Applet you can easily transfer multiple files and directories, delete files, rename files, create directories and so on all within your browser and without installing any software. Secure FTP Applet is highly customizable to meet your development needs and can be easily embedded in any web based application. Check out a live demonstration of Secure FTP Applet.

Target audience

Secure FTP Applet is targeted to software developers and system integrators who wish to integrate file upload capabilities into their web applications or portals.

General features

Clientless installation - No installation required virtually eliminates system administration.

Cross platform - Capable of running within virtually any web browser equipped with a compatible Java runtime to include but not limited to Microsoft Internet Explorer and Netscape Navigator.

Secure File Transfers - Includes support for SFTP (Secure File Transfer Protcol) allowing you to transfer sensitive data securely.

Firewall support - Default passive data transfer mode allows you to easily connect to any FTP server from behind a firewall.

Transfer mode support - Transfer files using either ASCII or Binary transfer mode.

Multiple file transfer - Powerful feature allows you to upload entire directories with ease.

Multilingual support - Customize the text elements use to match your locale.

Look and feel support - Customize the look and feel to match your web site palette.

Transfer status monitor - Progress dialog monitors the status of file transfers allowing you to cancel a transfer at anytime.

Lost connection detection - Automatically detects lost connections due to network time-out offering you the ability to reconnect.

Digitally signed - Digitally signed using a code signing certificate issued by Thawte a trusted certificate authority.

Local and remote file filters - Limit what files users can see in directory listings based on file extension.

Remote directory filters - Limit what directories users can see in a directory listing.

Username password encryption - Encrypt username and password applet parameters to prevent from discovery in HTML source.

Remote directory restrictions - Limit the directories that a user can access.

Create directory on connect - Automatically creates a remote directory upon successful login to FTP server.


System requirements

Secure FTP Applet has the following minimum system requirements:

· Operating Systems: Windows 98/2000/XP/ME, Linux, Solaris, Mac OS X
· Browser: Internet Explorer or Netscape Navigator
· Browser Java VM: Java-Plugin 1.4.2 or above enabled


Installation

Installing Secure FTP Applet may be accomplished as follows:

1. Extract the contents of sftpapplet.zip to your local hard drive using any zip archive extraction utility. If you do not have a zip archive extraction utility you may obtain one for free at http://www.winzip.com
2. Create a directory on your web server that can be accessed from your web root. For example /ftpapplet
3. Upload all files extracted in Step 1. to the directory you created on the web server in Step 2.
4. Go to test page located at the URL http://server/dir/index.html where the server portion of the URL is replaced with the IP address or domain name of your web server and dir portion of the URL is replaced with the relative path of the directory you created in Step 2. Example: http://www.jscape.com/ftpapplet/index.html

Note

Ensure that files are transferred using binary mode when using an FTP client to transfer files. Failure to do so may result in file corruption and inability to run applet.


Evaluation

You may download a free evaluation version at http://www.jscape.com/sftpapplet/.

The Secure FTP Applet evaluation version is fully functional. When running the evaluation version a "FOR EVALUATION ONLY" banner is displayed at the top of the applet. This banner is removed upon purchasing a license key.

See also

Purchase Secure FTP Applet
Installing your license key


License

SECURE FTP APPLET LICENSE AGREEMENT

IMPORTANT - READ CAREFULLY

This license statement and limited warranty constitutes a legal agreement ("License Agreement") between you (either as an individual or a single entity) and JSCAPE for the software product ("Software") identified above, including any software, media, and accompanying on-line or printed documentation.

BY INSTALLING, COPYING, OR OTHERWISE USING THE SOFTWARE, YOU AGREE TO BE BOUND BY ALL OF THE TERMS AND CONDITIONS OF THE LICENSE AGREEMENT.

Upon your acceptance of the terms and conditions of the License Agreement, JSCAPE grants you the right to use the Software in the manner provided below.

This Software is owned by JSCAPE and is protected by copyright law and international copyright treaty. Therefore, you must treat this Software like any other copyrighted material (e.g., a book), except that you may either make one copy of the Software solely for backup or archival purposes or transfer the Software to a single hard disk provided you keep the original solely for backup or archival purposes.

You may transfer the Software and documentation on a permanent basis provided you retain no copies and the recipient agrees to the terms of the License Agreement. Except as provided in the License Agreement, you may not transfer, rent, lease, lend, copy, modify, translate, sublicense, time-share or electronically transmit or receive the Software, media or documentation.

You acknowledge that the Software is a confidential trade secret of JSCAPE and therefore you agree not to reverse engineer, decompile, or disassemble the Software.

ADDITIONAL LICENSE TERMS FOR SECURE FTP APPLET EVALUTION EDITION

The evaluation version of Software may be used free of charge for non-commercial purposes only. If you wish to use the Software for commercial purposes you must register the Software or remove the Software from your system completely. Failure to register Software or remove the Software from system when used in a commercial environment will be a violation of this software agreement.

LIMITED WARRANTY

JSCAPE warrants that the Software, as updated and when properly used, will perform substantially in accordance with the accompanying documentation, and the Software media will be free from defects in materials and workmanship, for a period of ninety (90) days from the date of receipt. Any implied warranties on the Software are limited to ninety (90) days. Some states/jurisdictions do not allow limitations on duration of an implied warranty, so the above limitation may not apply to you.

This Limited Warranty is void if failure of the Software has resulted from accident, abuse, or misapplication. Any replacement Software will be warranted for the remainder of the original warranty period or thirty (30) days, whichever is longer.

TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, JSCAPE AND ITS SUPPLIERS DISCLAIM ALL OTHER WARRANTIES AND CONDITIONS, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE, AND NON-INFRINGEMENT, WITH REGARD TO THE SOFTWARE, AND THE PROVISION OF OR FAILURE TO PROVIDE SUPPORT SERVICES. THIS LIMITED WARRANTY GIVES YOU SPECIFIC LEGAL RIGHTS. YOU MAY HAVE OTHERS, WHICH VARY FROM STATE/JURISDICTION TO STATE/JURISDICTION.

LIMITATION OF LIABILITY TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL JSCAPE OR ITS SUPPLIERS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT, OR CONSEQUENTIAL DAMAGES WHATSOEVER (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, OR ANY OTHER PECUNIARY LOSS) ARISING OUT OF THE USE OF OR INABILITY TO USE THE SOFTWARE PRODUCT OR THE PROVISION OF OR FAILURE TO PROVIDE SUPPORT SERVICES, EVEN IF JSCAPE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. BECAUSE SOME STATES AND JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY, THE ABOVE LIMITATION MAY NOT APPLY TO YOU.

HIGH RISK ACTIVITIES

The Software is not fault-tolerant and is not designed, manufactured or intended for use or resale as on-line control equipment in hazardous environments requiring fail-safe performance, such as in the operation of nuclear facilities, aircraft navigation or communication systems, air traffic control, direct life support machines, or weapons systems, in which the failure of the Software could lead directly to death, personal injury, or severe physical or environmental damage ("High Risk Activities"). JSCAPE and its suppliers specifically disclaim any express or implied warranty of fitness for High Risk Activities.

U.S. GOVERNMENT RESTRICTED RIGHTS

The Software and documentation are provided with RESTRICTED RIGHTS. Use, duplication, or disclosure by the Government is subject to restrictions as set forth in subparagraphs ©(1)(ii) of the Rights in Technical Data and Computer Software clause at DFARS 252.227-7013 or subparagraphs ©(1) and (2) of the Commercial Computer Software-Restricted Rights at 48 CFR 52.227-19, as applicable.

GENERAL PROVISIONS

This License Agreement may only be modified in writing signed by you and an authorized officer of JSCAPE. If any provision of this License Agreement is found void or unenforceable, the remainder will remain valid and enforceable according to its terms. If any remedy provided is determined to have failed for its essential purpose, all limitations of liability and exclusions of damages set forth in the Limited Warranty shall remain in effect.

This License Agreement shall be construed, interpreted and governed by the laws of the State of Arizona, U.S.A. This License Agreement gives you specific legal rights; you may have others which vary from state to state and from country to country. JSCAPE reserves all rights not specifically granted in this License Agreement.


Purchase

You may securely purchase Secure FTP Applet online using most major credit cards. All software is delivered electronically within 24 hours of purchase. If you are a large company, university or government institution and wish to purchase with a purchase order please contact support@jscape.com for assistance.

Purchase Secure FTP Applet

See also

Installing your license key


Installing your license key

When you purchase a license key from JSCAPE or an authorized distributor, you will receive a confirmation e-mail containing your license key. This license key is named license-key.txt  Upload the supplied license-key.txt file in the same directory on your server containing the applet jar file.

At this point close all instances of your browser and reload the applet. The applet will then verify the host address against the license-key.txt file and the evaluation banner will be removed.

Note

If you are using a FTP client to perform this upload ensure that you are using binary mode when transferring the license-key.txt file, otherwise the key may become corrupted due to line conversions performed by FTP clients when in ASCII mode.


Technical support

At JSCAPE we strive to provide useful and timely technical support. If you have any technical support issues regarding Secure FTP Applet please post support questions to the Help Desk at http://support.jscape.com

When requesting support please be sure to include any source code which may help us in answering your question. JSCAPE will make every effort to answer your technical support questions in a timely manner. Most technical support questions can be resolved within 12-24 hours.


Version history

Version 4.2.0
Aug. 21, 2007

Enhancement: Changed default local directory to be users default home directory according to the operating system and added link back to this directory in "Browse local" dialog.
Enhancement: Added client support for MODE Z command in order to compress file transfers and directory listings if supported by server. This feature can be enabled using the enableCompression applet parameter.
Enhancement: Added "Zip Upload" feature which allows you to compress one or more local files/directories into a single archive before uploading to server.

Version 4.0
May 30, 2007

Enhancement: Added support for WebDAV file transfer protocol.
Enhancement: Added retryLimit parameter which controls how many times a file transfer will be retried in the event of failure.
Enhancement: Added performChecksum parameter which controls whether checksums are performed when using FTP/S protocols.
Enhancement: Added natAddress parameter which controls the NAT address used when connecting using FTP/S protocols.
Enhancement: Improved loading of language.txt file in that if language.txt file cannot be found a default version that is embedded in JAR will be used.

Version 3.0.4
Jan. 9, 2007

Enhancement: Added showRemote parameter which alllows you to enable/disable showing the remote directory listing.
Enhancement: Added tempExtension parameter which allows you to define a temporary extension that will be used when uploading files. Files will be renamed after upload is completed.
Enhancement: Added certificate dialog to be displayed when connecting to an FTPS enabled server. Whether the certificate dialog is displayed may be controlled using the showCertificateDialog applet parameter.

Version 3.0.3
Dec. 15, 2006

Enhancement: Added showGrid parameter that may be used to enable/disable the grid lines shown in local and remote directory listings.
Enhancement: Added showHorizonalLines parameter that may be used to enable/disable the horizontal grid lines shown in local and remote directory listings.
Enhancement: Added showVerticalLines parameter that may be used to enable/disable the vertical grid lines shown in local and remote directory listings.
Bug Fix: Fixed ASCII file transfer performance issue.
Bug Fix: Fixed issue with enableDownload and enableUpload parameters.

Version 3.0.2
Oct. 27, 2006

Enhancement: Message windows is now cleared when connection is successfully established.
Bug Fix: Fixed issue with applet repeatedly polling unavailable drives.

Version 3.0.1
Oct. 24, 2006

Bug Fix: Fixed bug in directory listing parser for servers that support MLSD command.

Version 3.0
Oct. 1, 2006

Enhancement: GUI revamped and updated to use Swing components.
Enhancement: Added support for drag-drop file transfers.
Enhancement: Added support for date/filesize in both local and remote directory listings.

Version 2.6
Jul. 1, 2006

Enhancement: Improved transfer speed for SFTP (FTP over SSH) protocol.
Enhancement: Added ability to clear control channel using CCC command when establishing an explicit FTPS (FTP over SSL) connection. See the ccc and cccClose commands in Using Secure FTP Applet > Connection Parameters for details.
Bug Fix: Fixed issue with dialog windows not closing when clicking close button in upper right hand corner.
Bug Fix: Fixed issue with applet hanging when trying to upload a file to a directory without proper permissions in FTPS mode.

Version 2.5
Aug. 1, 2005

Bug Fix: Various bug fixes

Version 2.1

Apr. 14 , 2005

Enhancement - Added abilty to specify location of parameters file. See params applet parameter.

Version 2.0

Mar. 3 , 2005

Enhancement - Added ASCII file transfer support for SFTP (FTP over SSH) protocol
Enhancement - Added FTPS (FTP over SSL) connection support
Fix - Fixed issue parsing some UNIX FTP directory listings

Version 1.6

Sep. 8 , 2004

Enhancement - Added special user.desktop value that may be passed to localDir applet parameter in order to specify the local directory as the desktop.

Version 1.5

Aug. 23, 2004

Enhancement - Added showCurrentRemoteDir applet parameter allowing you to hide the current remote directory path.
Enhancement - Added ZLIB compression support for improved file transfer performance.
Fix - Fixed handling of SFTP directory listings on VanDyke VShell SFTP server.

Version 1.4

Jun. 9, 2004

Enhancement - Added ability to define runtime properties in a file, hiding applet parameters from view in HTML source.
Enhancement - Major performance enhancement to SFTP/SSH downloads.

Version 1.3

May. 13, 2004

Enhancement - Added support to browse local volumes.
Enhancement - Added support to browse recent local remote directories.

Version 1.2

Apr. 27, 2004

Enhancement - Local directory listings are now sorted alphabetically.
Enhancement - Added loginErrorUrl parameter to specify page to redirect to in the event of a login error.
Fix - Fixed file upload bug found when overwriting files where source file is smaller in size than destination file.

Version 1.1

Apr. 08, 2004

Enhancement - Added SOCKS proxy support.
Enhancement - Added ability to exclude remote directories from display. See remoteDirs applet parameter.
Enhancement - Added ability to limit remote directories displayed. See remoteDirs applet parameter.

Initial Release

Mar. 01 2004


User interface

Figure 1. User interface

Below is a screenshot of the Secure FTP Applet user interface. Your display may vary slightly based on your operating system, browser used and any customized look and feel parameters you may have provided to the applet. A description of each component is provided below.

Figure 1.

1. Current local directory - Displays the full path of your current local directory.
2. Local directory - Displays files and child folders in your current local directory.
3. Current remote directory - Displays the path of your current remote directory.
4. Remote directory - Displays files and child folders in your current remote directory.
5. Transfer mode - Switch between ASCII and Binary transfer modes
6. Message window - Displays messages sent to and received from the FTP server.
7. Upload / Download - Buttons for uploading and downloading files.
8. General commands - Buttons for connecting to FTP server, disconnecting from FTP server and accessing help and information about the applet.
9. Local drives - Displays local drive listing.
10. Remote directory history - History of directories accessed on remote system.

Figure 2. Signed applet dialog

Secure FTP Applet requires access to local resources. For this reason the applet must be signed by a certificate issued by a certificate authority (CA). When loading an applet that is signed by a CA a security dialog is displayed that lets the user know that the applet has been signed and is asking for permission to access local resources. The end user must click "Yes" for the applet to run. If the user clicks "Always" then this applet will always be trusted and the dialog will not be displayed in future sessions.

Figure 3. Connect dialog

To connect manually click on the "Connect" button. The following dialog will be displayed prompting you for hostname, port, username and password information. If you wish to use an anonymous connection click on the "Anonymous" checkbox to generate an anonymous username and password. Select the connection type you would like to make. For a secure connection select any of the secure options listed in the Connection type drop-down. Click on the "OK" button to establish a connection to the FTP server.

Figure 4. Delete file dialog

To delete one or more items in a directory listing select those items that you wish to delete and click on the Delete button or press the delete key on your keyboard. A confirmation dialog will be displayed asking you to confirm this action. Click OK to confirm or Cancel to abort this operation.

Figure 5. Rename file dialog

To rename one or more files or directories select those items that you wish to rename and click the Rename button. For each item selected a dialog will be presented with the current name highlighted. Type in the new name and click OK to confirm or Cancel to abort this operation.

Figure 6. Progress dialog

When transferring files a progress dialog will be displayed indicating your transfer status. To cancel a transfer click on the "Cancel" button. This will cancel the current file being transferred as well as any other files or directories that were selected for transfer.

Figure 7. Create directory dialog

To create a directory click on the Mkdir button. A dialog will be displayed prompting you for the name of the directory to create. Click the OK button to create the directory or Cancel to abort this operation.


Managing local and remote files

Both local and remote files may be managed using the context-sensitive pop-up dialogs found in the local and remote directory listings. This pop-up dialog may be accessed by performing a right-click on the local or remote directory listing. Available commands include.

Mkdir - Make a directory.
Rename - Rename a file or directory.
Delete - Delete a file or directory.
Refresh - Refresh a directory listing.
Resume - Resume a broken file transfer.


User interface parameters

The user interface parameters control the look and feel of the applet allowing you to define the colors used for elements such as buttons and text fields Each of these parameters may be provided to the applet in the HTML source file.

Parameter
Description
showButtons
Controls whether the Connect, Disconnect, Help and About buttons are displayed.

Default: true
Valid values: true, false
showConnectButton
Controls whether the Connect button is displayed.

Default: true
Valid values: true, false
showDisconnectButton
Controls whether the Disconnect button is displayed.

Default: true
Valid values: true, false
showHelpButton
Controls whether the Help button is displayed.

Default: true
Valid values: true, false
showAboutButton
Controls whether the About button is displayed.

Default: true
Valid values: true, false
showMsgWindow
Controls whether the message window is displayed.

Default: true
Valid values: true, false
showMode
Controls whether the transfer mode options (ASCII, Binary) are displayed

Default: true
Valid values: true, false
showDirButtons
Controls whether the local and remote directory buttons (Mkdir, Rename, Delete, Refresh, Resume) are displayed.

Default: true
Valid values: true, false
enableRemoteRename
Controls whether the remote Rename button is enabled.

Default: true
Valid values: true, false
enableRemoteDelete
Controls whether the remote Delete button is enabled.

Default: true
Valid values: true, false
enableRemoteCreateDir
Controls whether the remote Mkdir button is enabled.

Default: true
Valid values: true, false
enableDownload
Controls whether the download "<<" button is enabled.

Default: true
Valid values: true, false
enableUpload
Controls whether the upload ">>" button is enabled.

Default: true
Valid values: true, false
enableHost
Controls whether the host field in Connect dialog is enabled.

Default: true
Valid values: true, false
enableConnectionType
Controls whether the connection type drop-down is enabled.

Default: true
Valid values: true, false
enableAnonymous
Controls whether the anonymous option in Connect dialog is enabled.

Default: true
Valid values: true, false
enablePassive
Controls whether the passive option in Connect dialog is enabled.

Default: true
Valid values: true, false
helpUrl
Controls the location of the help file displayed when clicking on the "Help" button.

Default: http://www.jscape.com/ftpapplet/docs.html
Valid values: Any valid web address
bgColor
Controls the background color of the applet.

Default: CCCCCC (grey)
Valid values: any valid 6 character hexidecimal value e.g. FF0000 (red)
textColor
Controls the text color used in the applet window.

Default: 000000 (black)
Valid values: any valid 6 character hexidecimal value e.g. FF0000 (red)
dirColor
Controls the background color of the local and remote directory listings.

Default: FFFFFF (white)
Valid values: any valid 6 character hexidecimal value e.g. FF0000 (red)
dirNodeColor
Controls the color of the folder and file icons in the local and remote directory listings.

Default: CCDD66 (dark yellow)
Valid values: any valid 6 character hexidecimal value e.g. FF0000 (red)
dirTextColor
Controls the text color used for displaying the names of items in the local and remote directory listings.

Default: 000000 (black)
Valid values: any valid 6 character hexidecimal value e.g. FF0000 (red)
dirWidth
Controls the width of the local and remote current working directory text box represented in columns. (1 column is approximately 1 character) Setting this value will automatically scale all other components in the applet window to fit.

Default: operating system dependent
Valid values: positive integer
selectedNodeColor
Controls the color of selected nodes in the local and remote directory listings.

Default: 0000FF (blue)
Valid values: any valid 6 character hexidecimal value e.g. FF0000 (red)
buttonColor
Controls the background color for all buttons including those found in any dialogs.

Default: operating system default
Valid values: any valid 6 character hexidecimal value e.g. FF0000 (red)
buttonTextColor
Controls the text color used for all button labels including those found in any dialogs.

Default: 000000 (black)
Valid values: any valid 6 character hexidecimal value e.g. FF0000 (red)
msgColor
Controls the background color used in the message window.

Default: operating system dependent
Valid values: any valid 6 character hexidecimal value e.g. FF0000 (red)
msgTextColor
Controls the text color used in the message window.

Default: 000000 (black)
Valid values: any valid 6 character hexidecimal value e.g. FF0000 (red)
showGrid
Controls whether grid lines are shown in local and remote directory listings.

Default: true
Valid values: true, false
showHorizontalLines
Controls whether horizontal grid lines are shown in local and remote directory listings.

Default: true
Valid values: true, false
showVerticalLines
Controls whether horizontal grid lines are shown in local and remote directory listings.

Default: true
Valid values: true, false
showRemote
Controls whether remote directory listing is displayed. If hidden then only uploads are permitted.

Default: true
Valid values: true, false
showCertificateDialog
Controls whether certificate dialog is displayed when connecting to FTPS servers.

Default: true
Valid values: true, false


Connection parameters

The connection parameters control properties of the FTP session such as login and remote startup directory. Each of these parameters may be provided to the applet in the HTML source file.

Parameter
Description
autoConnect
Controls if connection is established automatically after applet is loaded using hostname, username, password and connectionType applet parameters.

Default: false
Valid values: true, false
hostname
The fully qualified hostname or IP address of the FTP server. If connectionType is webdav then this should be the URL of the WebDav server.

Default: ""
Valid values: a valid hostname, IP address or WebDAV URL
port
The remote port that the FTP server is listening on.

Default: 21
Valid values: 1-65535
passive
Enables / disables passive FTP data transfer.

Default: true
Valid values: true, false
timeout
The amount of time measured in milliseconds to wait for a FTP server response. Exceeding timeout will result in the display of an error dialog indicating that the connection has been lost and allowing you to reconnect.

Default: 20000 (20 seconds)
Valid values: any positive integer
username
The username that you use to login to the FTP server. For an anonymous connection this is the username anonymous.

Default: ""
Valid values: a valid username
password
The password that you use to login to the FTP server. For an anonymous connection FTP servers generally request your email address.

Default: ""
Valid values: a valid password
connectionType
The type of connection FTP, SFTP (FTP over SSH), FTPS (FTP over SSL) or WebDAV to use by default when using autoConnect parameter or when displaying Connect dialog.

Default: ftp
Valid values: ftp, sftp, ftps, ftps-implicit, webdav
ccc
If the connectionType is ftps and this property is enabled then the CCC command will be issued after authentication succeeds, clearning the control channel.

Default: false
Valid values: true, false
cccClose
If the connectionType is ftps and the ccc property is enabled then the SSL connection will be closed based on this setting.

Default: true
Valid values: true, false
encrypt
This option should be used if the username and password applet parameters are encoded to prevent from being displayed in the HTML source. This is not to be confused with the connectionType applet parameter which determines if the connection is established using standard FTP or encrypted using SFTP/SSH.

If set to "true" then you must BASE64 encode the username and password parameters. Secure FTP Applet will then decode these values prior to establishing a connection to the FTP server.

Default: false
Valid values: true, false
mode
The transfer mode to be used after a connection to the FTP server has been established.

Default: ascii
Valid values: ascii, binary
localDir
The local directory to change to upon startup.

Default: system root directory
Valid values: a valid local path e.g. c:\documents

For Windows and Mac clients you may optionally specify the value "user.desktop". This will specify the users local directory as their desktop directory.
localFilter
The file extension filters to apply to the local directory. Multiple extensions may be provided with each file extension separated by a comma.

Default: ""
Valid values: a comma delimited list of file extensions. E.g. ".gif, .jpg"
remoteDir
The remote directory to change to upon successful login to the FTP server.

Default: ""
Valid values: a valid remote directory path
remoteFilter
The file extension filters to apply to the remote directory. Multiple extensions may be provided with each file extension separated by a comma.

Default: ""
Valid values: a comma delimited list of file extensions. E.g. ".gif, .jpg"
restrictRemoteDir
If set to "true" then the user may only see files at and below the remote directory specified in the remoteDir parameter. If user attempts to access any directories above the level of the remotedir parameter then an error dialog will be displayed. Note: remoteDir MUST begin with a forward slash "/".

Default: false
Valid values: true, false
restrictLoginDir
If set to "true" then the user may only see files at and below the directory the user is placed in by default after login. If user attempts to access any directories above the level of the default login directory then an error dialog will be displayed.

Default: false
Valid values: true, false
remoteDirs
Comma delimited list of remote directories to be included remote directory listing, all other directories are excluded. This filter is applied to the remote directory listing each time it is refreshed.

Default: ""
Valid values: a comma delimited list of named remote directories
excludeRemoteDirs
Comma delimited list of remote directories to be excluded from remote directory listing, all other directories are included. This filter is applied to the remote directory listing each time it is refreshed.

Default: ""
Valid values: a comma delimited list of named remote directories
createRemoteDir
The full path of the directory to create upon establishing a connection with the FTP server. This directory will be created prior to changing to the remote directory provided in the remoteDir applet parameter.

Default: ""
Valid values: a valid remote directory path
language
The language properties file to use when initializing the applet.

Default: ""
Valid values: a valid language code represented by a language properties file. E.g. "fr" where language_fr.properties file exists relative to the applet.
showProxy
Enables the display of the SOCKS proxy fields in the connect dialog.

Default: false
Valid values: true, false
proxyHostname
The hostname or IP address of the SOCKS proxy to connect to.

Default: ""
Valid values: a valid hostname or IP address
proxyPort
The port that the SOCKS proxy server is listening on.

Default: 1080
Valid values: 1-65535
loginErrorUrl
The web address to redirect user to in the event that a bad username or password is submitted during login.

Default: ""
Valid values: a valid web address e.g. http://www.jscape.com
retryLimit
The number of times to retry transferring a file if an error occurs.

Default: 0
Valid values: Any numeric value greater than or equal to 0.
performChecksum
Whether or not to perform a checksum after transferring files using FTP/S protocols. The XCRC command must be supported by the FTP server.

Default: false
Valid values: true, false
tempExtension
The temporary extension to use when uploading files. After file has completed upload file will be renamed to original filename. For example, when using tempExtension of .tmp the source file test.txt would be uploaded as test.txt.tmp prior to being renamed to test.txt once upload is complete.

Default: ""
Valid values: Any valid string extension.
natAddress
NAT address to use when communicating using FTP/S protocols.

Default: ""
Valid values: a valid IP address
enableCompression
Enables / disables ZIP compression when performing file transfers and directory listings. Server must support MODE Z command.

Default: false
Valid values: true, false


Internationalization parameters

The internationalization parameters allow you to customize the text elements used in the applet. This can be accomplished by modifying the text elements provided in the language.txt file.

Alternatively if you wish to provide support for multiple languages you may create a separate properties file for each language you wish to support. Using this method you can dynamically load the language file based on the "language" parameter provided to the applet.

Example

If you wish to create a properties file that contains the text elements for the French language then perform the following:

1. Copy the language.txt file to a new file named language_fr.txt
2. Update the text element values in language_fr.txt providing the French equivalents.
3. Add a language parameter to the applet with the value of "fr".
4. Upload the language_fr.txt file to the web server directory that contains the language.txt file.

Note

If no language parameter is provided then the default language.txt file is used.

Parameter
Description
connectBtn
Controls the text displayed on the connect button.

Default: Connect
disconnectBtn
Controls the text displayed on the disconnect button.

Default: Disconnect
helpBtn
Controls the text displayed on the help button.

Default: Help
aboutBtn
Controls the text displayed on the about button.

Default: About
mkDirBtn
Controls the text displayed on the local and remote create directory buttons.

Default: Mkdir
renameBtn
Controls the text displayed on the local and remote rename file buttons.

Default: Rename
deleteBtn
Controls the text displayed on the local and remote delete file buttons.

Default: Delete
refreshBtn
Controls the text displayed on the local and remote refresh directory buttons.

Default: Refresh
uploadBtn
Controls the text displayed on the upload button.

Default: >>
downloadBtn
Controls the text displayed on the download button.

Default: <<
okBtn
Controls the text displayed on all OK buttons.

Default: OK
cancelBtn
Controls the text displayed on all Cancel buttons.

Default: Cancel
localSystemLbl
Controls the text displayed above the local working directory text field.

Default: Local System
remoteSystemLbl
Controls the text displayed above the remote working directory text field.

Default: Remote System
deleteLocalFileTitle
Controls the title for the Delete local file dialog.

Default: Delete local file
deleteRemoteFileTitle
Controls the title for the Delete remote file dialog.

Default: Delete remote file
deleteFileLbl
Controls the text displayed in the delete local and delete remote file dialogs.

Default: Are you sure you want to delete the selected file(s)?
createLocalDirTitle
Controls the title for the Create local directory dialog.

Default: Create local directory
createRemoteDirTitle
Controls the title for the Create remote directory dialog.

Default: Create remote directory
createDirLbl
Controls the text displayed in the create local directory and create remote directory dialogs.

Default: Enter directory name:
renameLocalFileTitle
Controls the title for the Rename local file dialog.

Default: Rename local file
renameRemoteFileTitle
Controls the title for the Rename remote file dialog.

Default: Rename remote file
renameFileLbl
Controls the text displayed in the rename local file and rename remote file dialogs.

Default: Enter new name:
transferStatusTitle
Controls the title for the Transfer status dialog.

Default: Transfer status
errTitle
Controls the title for error dialogs.

Default: Error
errDeleteLbl
Controls the error text displayed when unable to delete a file.

Default: Unable to delete one or more file(s).
errRenameLbl
Controls the error text displayed when unable to rename a file.

Default: Unable to rename one or more file(s).
errSetDirLbl
Controls the error text displayed when unable to change to a specified directory.

Default: Unable to access the specified directory.
errCreateDir
Controls the error text displayed when unable to create the specified directory.

Default: Unable to create the specified directory.


Disabling the evaluation banner

To remove the FOR EVALUATION ONLY text banner displayed at the top of the applet we ask that you purchase a registered copy of Secure FTP Applet.

See also

Purchase


Hiding applet parameters from view in HTML source

You may define the applet runtime properties in the params.txt file. This will prevent users from seeing applet parameters when viewing HTML source.


Specifying custom location of parameters file

In some cases it may be desirable to specify a custom location for parameters other than in the default params.txt. You may do this using the params applet parameter.

Example

<param name="params" value="gui/params/jsmith.txt">

The above code would load applet parameters from the path gui/params/jsmith.txt which is relative to the location of the applet files. You may also specify absolute URL's.

Example

<param name="params" value="http://www.domain.com/ftpapplet/gui/params/jsmith.txt">


Hiding Connect, Disconnect, Help and About buttons

You may hide the Connect, Disconnect, Help and About buttons by passing the showButtons applet parameter to the applet with a value of false. Hiding these buttons is recommended when you are performing automatic login based on predefined hostname, username and password values.

Example

<param name="showButtons" value="false">

The above example demonstrates this setting using HTML applet parameters.

Example

showButtons = false

The above example demonstrates this setting loading applet parameters from the params.txt file.

See also

Performing automatic login


Hiding the message window

You may hide the message window by passing the showMsgWindow applet parameter to the applet with a value of false.

Example

<param name="showMsgWindow" value="false">

The above example demonstrates this setting using HTML applet parameters.

Example

showMsgWindow = false

The above example demonstrates this setting loading applet parameters from the params.txt file.


Hiding the transfer mode options

You may hide the transfer mode options (ASCII, Binary) by passing the showMode applet parameter to the applet with a value of false.

Example

<param name="showMode" value="false">

The above example demonstrates this setting using HTML applet parameters.

Example

showMode = false

The above example demonstrates this setting loading applet parameters from the params.txt file.


Hiding the local and remote directory buttons

You may hide the local and remote directory buttons (Mkdir, Rename, Delete, Refresh, Resume) by passing the showDirButtons applet parameter with a value of false.

Example

<param name="showDirButtons" value="false">

The above example demonstrates this setting using HTML applet parameters.

Example

showDirButtons = false

The above example demonstrates this setting loading applet parameters from the params.txt file.


Hiding hidden files

You may hide "hidden" files (those whose name are prefixed with a period) in the remote directory by passing showHiddenFiles applet parameter with a value of false.

Example

<param name="showHiddenFiles" value="false">

The above example demonstrates this setting using HTML applet parameters.

Example

showHiddenFiles = false

The above example demonstrates this setting loading applet parameters from the params.txt file.


Hiding the current remote directory

You may hide the current remote directory by passing the showCurrentRemoteDir applet parameter with a value of false.

Example

<param name="showCurrentRemoteDir" value="false">

The above example demonstrates this setting using HTML applet parameters.

Example

showCurrentRemoteDir = false

The above example demonstrates this setting loading applet parameters from the params.txt file.


Hiding the remote directory listing

You may hide the remote directory listing by passing the showRemote applet parameter with a value of false.

Example

<param name="showRemote" value="false">

The above example demonstrates this setting using HTML applet parameters.

Example

showRemote = false

The above example demonstrates this setting loading applet parameters from the params.txt file.


Uploading files with temporary extension

You may specify that files uploaded are uploaded with a temporary file extension. Once files are uploaded completely they will be renamed to their original source filename. This may be accomplished by using the tempExtension applet parameter, using the desired temporary extension as the value.

Example

<param name="tempExtension" value=".tmp">

The above example demonstrates this setting using HTML applet parameters.

Example

tempExtension = .tmp

The above example demonstrates this setting loading applet parameters from the params.txt file.


Performing automatic login

You may login to an FTP server automatically by passing the autoConnect applet parameter to the applet with a value of true. You must also provide the necessary hostname, username and password applet parameters. Under these conditions it is recommended that you hide the Connect, Disconnect, Help and About buttons.

Example

<param name="autoConnect" value="true">
<param name="hostname" value="ftp.myhost.com">
<param name="username" value="jsmith">
<param name="password" value="secret">
<param name="showButtons" value="false">

The above example demonstrates this setting using HTML applet parameters.

Example

autoConnect = true
hostname = ftp.myhost.com
username = jsmith
password = secret
showButtons = false

The above example demonstrates this setting loading applet parameters from the params.txt file.

See also

Hiding Connect, Disconnect, Help and About buttons


Creating a directory after login

You may create a directory after successful login by passing the createRemoteDir applet parameter to the applet with a value equal to the full path of the directory to create. If you are also using the remoteDir applet parameter the order of execution is that the directory is created first and then the directory is set using the remoteDir parameter.

Example

<param name="createRemoteDir" value="/home/user/jsmith/temp">

The above example demonstrates this setting using HTML applet parameters.

Example

createRemoteDir = /home/user/jsmith/temp

The above example demonstrates this setting loading applet parameters from the params.txt file.

See also

Setting remote directory after login


Excluding directories from remote directory listing

You may exclude one or more directories from the remote directory listing by passing the excludeRemoteDirs applet parameter to the applet with a value equal to a comma delimited list of remote directory names to exclude. The excludeRemoteDirs filter will be used each time the remote directory is refreshed and will be compared against all directories in the current remote directory.

Example

<param name="excludeRemoteDirs" value="tmp,temp,debug">

The above example demonstrates this setting using HTML applet parameters.

Example

excludeRemoteDirs = tmp,temp,debug

The above example demonstrates this setting loading applet parameters from the params.txt file.


Limiting directories displayed in remote directory listing

You may limit the directories displayed in the remote directory listing by passing the remoteDirs applet paramter to the applet with a value equal to a comma delimited list of remote directory names to include. The remoteDirs filter will be used each time the remote directory is refreshed and will be compared against all directories in the current remote directory.

Example

<param name="remoteDirs" value="work,tmp">

The above example demonstrates this setting using HTML applet parameters.

Example

remoteDirs = work,tmp

The above example demonstrates this setting loading applet parameters from the params.txt file.


Setting remote directory after login

You may set the remote directory after successful login by passing the remoteDir applet parameter to the applet with a value equal to the full path of the directory to change to. If you are also using the createRemoteDir applet parameter the order of execution is that the directory is created first using the createRemoteDir parameter and then the directory is set using the remoteDir parameter.

Example

<param name="remoteDir" value="/home/user/jsmith/uploads">

The above example demonstrates this setting using HTML applet parameters.

Example

remoteDir = /home/user/jsmith/uploads

The above example demonstrates this setting loading applet parameters from the params.txt file.

See also

Creating a directory after login


Restricting user to remote directory

You may restrict a user to a remote directory by passing the restrictRemoteDir applet parameter to the applet with a value of true. This applet parameter works in conjunction with the remoteDir applet parameter. When used together the user will be restricted from accessing directories above the directory path provided in the remoteDir applet parameter. Note: When using the restrictRemoteDir parameter the remoteDir value MUST begin with a "/".

Example

<param name="remoteDir" value="/home/user/jsmith/uploads">
<param name="restrictRemoteDir" value="true">

The above example demonstrates this setting using HTML applet parameters.

Example

remoteDir = /home/user/jsmith/uploads
restrictRemoteDir = true

The above example demonstrates this setting loading applet parameters from the params.txt file.


Restricting user to default login directory

You may restrict a user to the default login directory by passing the restrictLoginDir applet parameter to the applet with a value of true. The user will be restricted from accessing directories above the default login directory.

Example

<param name="restrictLoginDir" value="true">

The above example demonstrates this setting using HTML applet parameters.

Example

restrictLoginDir = true

The above example demonstrates this setting loading applet parameters from the params.txt file.


Using remote file filters

You may limit the types of files returned in a remote directory listing by passing the remoteFilter applet parameter to the applet with a value equal to a comma-delimited list of file extensions.

Example

<param name="remoteFilter" value=".jpg, .gif, .png">

The above example demonstrates this setting using HTML applet parameters.

Example

remoteFilter = .jpg,.gif,.png

The above example demonstrates this setting loading applet parameters from the params.txt file.


Using local file filters

You may limit the types of files returned in a local directory listing by passing the localFilter applet parameter to the applet with a value equal to a comma-delimited list of file extensions.

Example

<param name="localFilter" value=".jpg, .gif, .png">

The above example demonstrates this setting using HTML applet parameters.

Example

localFilter = .jpg,.gif,.png

The above example demonstrates this setting loading applet parameters from the params.txt file.


Encrypting username and password applet parameters

You may encrypt the username and password parameters by passing the encrypt applet parameter with a value of true and the BASE64 encoded versions of the username and password parameters to the applet.

Example

<param name="encrypt" value="true">
<param name="username" value="anNtaXRo">
<param name="password" value="c2VjcmV0">

The above example demonstrates this setting using HTML applet parameters.

Example

encrypt = true
username = anNtaXRo
password = c2VjcmV0

The above example demonstrates this setting loading applet parameters from the params.txt file.


Disabling remote renaming of files

You may disable the ability to rename remote files by passing the enableRemoteRename applet parameter to the applet with a value of false.

Example

<param name="enableRemoteRename" value="false">

The above example demonstrates this setting using HTML applet parameters.

Example

enableRemoteRename = false

The above example demonstrates this setting loading applet parameters from the params.txt file.


Disabling deletion of remote files

Disabling the ability to delete remote files

You may disable the ability to delete remote files by passing the enableRemoteDelete applet parameter to the applet with a value of false.

Example

<param name="enableRemoteDelete" value="false">

The above example demonstrates this setting using HTML applet parameters.

Example

enableRemoteDelete = false

The above example demonstrates this setting loading applet parameters from the params.txt file.


Disabling creation of remote directories

You may disable the ability to create remote directories by passing the enableRemoteCreateDir applet parameter to the applet with a value of false.

Example

<param name="enableRemoteCreateDir" value="false">

The above example demonstrates this setting using HTML applet parameters.

Example

enableRemoteCreateDir = false

The above example demonstrates this setting loading applet parameters from the params.txt file.


Disabling file download

You may disable the ability to download files by passing the enableDownload applet parameter to the applet with a value of false.

Example

<param name="enableDownload" value="false">

The above example demonstrates this setting using HTML applet parameters.

Example

enableDownload = false

The above example demonstrates this setting loading applet parameters from the params.txt file.


Disabling file upload

You may disable the ability to upload files by passing the enableUpload applet parameter to the applet with a value of false.

Example

<param name="enableUpload" value="false">

The above example demonstrates this setting using HTML applet parameters.

Example

enableUpload = false

The above example demonstrates this setting loading applet parameters from the params.txt file.


Disabling hostname modification

You may disable the ability to modify the hostname in the connection dialog by passing the enableHost applet parameter to the applet with a value of false.

Example

<param name="enableHost" value="false">

The above example demonstrates this setting using HTML applet parameters.

Example

enableHost = false

The above example demonstrates this setting loading applet parameters from the params.txt file.


Disabling connection type modification

You may disable the ability to modify the connection type in the connection dialog by passing the enableConnectionType applet parameter to the applet with a value of false.

Example

<param name="enableConnectionType" value="false">

The above example demonstrates this setting using HTML applet parameters.

Example

enableConnectionType = false

The above example demonstrates this setting loading applet parameters from the params.txt file.


Disabling anonymous connection status

You may disable the ability to check / uncheck the anonymous option in the connection dialog by passing the enableAnonymous applet parameter to the applet with a value of false.

Example

<param name="enableAnonymous" value="false">

The above example demonstrates this setting using HTML applet parameters.

Example

enableAnonymous = false

The above example demonstrates this setting loading applet parameters from the params.txt file.


Disabling passive connection status

You may disable the ability to check / uncheck the anonymous option in the connection dialog by passing the enablePassive applet parameter to the applet with a value of false.

Example

<param name="enablePassive" value="false">

The above example demonstrates this setting using HTML applet parameters.

Example

enablePassive = false

The above example demonstrates this setting loading applet parameters from the params.txt file.


Setting custom help file location

You may define a custom help file to be used when clicking on the "Help" button by passing the helpUrl applet parameter with a value of the URL to the help file contents.

Example

<param name="helpUrl" value="http://www.jscape.com/sftpapplet/docs.html">

The above example demonstrates this setting using HTML applet parameters.

Example

helpUrl = http://www.jscape.com/sftpapplet/docs.html

The above example demonstrates this setting loading applet parameters from the params.txt file.


Redirection upon a failed login

You may redirect the user to a web address in the event of a bad username or password during login by passing the applet parameter loginErrorUrl with a value of the url to redirect to.

Example

<param name="loginErrorUrl" value="http://www.jscape.com/error.html">

The above example demonstrates this setting using HTML applet parameters.

Example

loginErrorUrl = http://www.jscape.com/error.html

The above example demonstrates this setting loading applet parameters from the params.txt file.