Daily Archive for November 3rd, 2007

Java Ftp Client

So for the 2nd part of my networking assignment, we have to create a simple FTP client.

Screenshot of my Worked-In-Progress FTP Client
zz85 Ftp Client

I was hoping…
to create a web server vs a ftp client as I thought
1. a web server could be more practical, simpler to implement, but could pack more features
2. the ftp protocol is old and troublesome, I already spent quite some time in the past trying to understand the protocol, lots of ftp clients exist already

Nevertheless, given the low weightage of the assignment, I didn’t want spend much time on it.
Lots of other work need more focus, but my programming habbits and “chiong project” culture in polytechnic kicked in and I did a little more than the requirements.

Although I believe I must have did quite some amount of work on Swing and networking component, bad memory and the rust affected me and I found myself using some time looking up various stuff. Sometimes I think, “are we letting Google is do all our work?”

Inspired by…
Anyway the product of my implementation was inspired by many many other stuff.
Filezilla as a free good implementation of FTP client. Command line ftp, telnet software. The terminal. Therefore the black screen.
Port sniffers- therefore the debug windows. IDE/Frontends thats why the GUI on the left.

I created a client in Eclipse then migirated to Netbeans trying their new 6.0 Beta1 (and Java 6- I’m must have lagged 2 versions since poly)

My product features…
Created for academic reasons, this software has educational purpose. Raw commands allowed to be typed in quickly on the right side of the screen. Some commands emulate the command line ftp software.

The way is screen is split is also to represent the User-FTP, PI, and DTP architecture as described by the RFCs. (RFCs 959 and rfc1579 were read). It does some upload and download.

Alright the client doesn’t does much, its far from perfect or good, but it shows my attempt trying to be creative.

Download it
here

Try it…
Just double click. If you wish to run from a command line, use
java -jar FtpClient.jar or java -cp FtpClient.jar ftpclient.FtpClientUI

Happy Messing with FTP.