JDesktop                   

A server/client program designed to help user to upload files to the remote machine.

 

SUMMARY

 

To develop a server/client based application that helps user to upload files in the remote machine.

TECHNOLOGIES

 

   1. Java Swing for GUI

   2. Eclipse 3.2 IDE for development, debugging.

   3. Programming Language: Java (jdk 1.6)

   4. Ant for build.

   5. SVN version control for versioning and code delivery.

   6. NSIS - creating installable executable file.        

 

PROJECTS IMPLEMENTATION DETAILS

 

Following are the major requirements that we had to meet while developing this project:

Ø       Technical Requirements

1.      Develop the swing based GUI for client program.

2.      Create installable client program.

Ø       Functional Requirements

A server/client program designed that will do following things:

Client Program

         This is the software that the user will download. When they run the program it should start off by prompting for a login name and password. Once they enter that it will send the info to the remote program server which will verify the information.

 

Following are the implementation:

Ø       Technical Solutions

1.      We used java swing for GUI.

2.      We developed the application using Java (jdk 1.6).

3.      SFtp for file transfer.

4.      NSIS - creating installable executable file.

Swing

    We used java swing for GUI. Swing provides a native look and feel that emulates the look and feel of several platforms, and also supports a pluggable look and feel that allows applications to have a look and feel unrelated to the underlying platform. 

NSIS

   NSIS (Nullsoft Scriptable Install System) is a tool that allows programmers to create installers for Windows. NSIS creates installers that are capable of installing, uninstalling, setting system-settings, extracting files, etc.

    To create a NSIS installer, you first have to write a NSIS script (script file is .nsi). A NSIS script is just a regular text file with a special syntax.

   The second thing you need to do in order to create your installer after you have created your script is to compile your script. MakeNSIS.exe is the NSIS compiler. It reads your script, parses it and creates an installer for you.

         

System Architecture

Figure 1 shows the architecture diagram of this application. The application uses Swing based GUI for the presentation Layer.

 

                                    

Figure 1

 

Ø       Functionality Implementation

1.     User Login

Screen shown in Figure 2 shows the Login panel, while opening the client application.

 

 

Figure 2

 

 This User has to provide the user name and password to make a successful login for uploading the files. On successful login, it returns back the FTP information that includes ftp URL, ftp username & password. Screen shown in Figure 3 comes if the login is successful.

 

 

Figure 3

 

Here the user can select a list of files from local system and upload a list of file to the remote system as a batch. The client first opens a sftp connection with the remote system. After which the files are passed to the remote machine and uploads these file to the directory provided in the remote machine for each user. If any error, will be displayed in the text area provided.