Web Server initiated FTP
Posted on 2004-11-17
I am not even sure this is the right forum for this. Please let me know if I should post this somewhere else. I am most experienced with Java, PERL and UNIX shell scripts so I'd like a solution in these realms.
I am writing a web application in Jakarta Struts which allows the client to store/view data over the web. The client needs to upload about 50 files, each about 50MB up to my server to have the data parsed and stored.
Problem is, he doesn't want to manually pick out the data and FTP them to a "work" directory on the server. The 50 files are mixed in with hundreds of other files under a directory. What he would like to see is the server (Linux machine) fetching these files from his desktop (a PC) automatically. He has compiled an xml file with "relative" path of all of these files. What he envision is that he simply upload this xml file to the server via "file upload" protocol, then specify the data directory (via a web page) and have the server go fetch these files and send them over to be parsed.
How do I do this? I can think of only two ways, neither I have ever done:
1. write a dedicated FTP tool that resides on the server which will FTP into his machine and fetch these files. The FTP tool would be outside of my Web Application but can be called by my servlet (using system call, something I hate to do) and given a list of files to fetch.
2. write something that installs and resides on "his" machine which will listen for request from the server and send over whatever file is requested.
Can anyone tell me if these are my only options? What are the pros and cons of each options in terms of simplicity and robustness, security?
Let me know if more details are needed or I need to increase the points.