I was using my Yahoo mail today and had to spend of most of the day attaching and sending some moderately large files to some colleagues, and I was seriously having a terrible time with it.
At first I thought it was my browser, but then I tried Opera, Firefox and IE and had similar problems. So I figured it must be Yahoo’s uploader, but then I re-considered after I was able to upload the documents from a different computer, not on my laptop. However, at some point in time, this PC also developed the same issues I had with my laptop. So then I concluded it must be the Internet connection. And truely, it was.
However, it did get me thinking as to which technology is better for creating custom file uploaders: Flash or Java? I wondered, which would handle my problematic Internet connection better? Since the Flash based Yahoo uploader was having issues, I decided to check online for some comparisons between the two. I did not find my answer, but I came across this nice article with some great links to some common Flash and Java file uploaders.
After testing JumperLoader (Java Uploader) on my system, I came to obvious conclusion that my Internet connection was in a league of its own. None of the uploaders had an easy time with it; probably because I’m behind two routers and a Modem. Certainly there must be a loss of transfered packets when uploading.
That said, I personally think Java file uploaders are better than flash because:
- You can gain considerable access to the User’s file system if permitted
- You have options for providing Drag and Drop functionality
- You have a wealth of opportunities and libraries to provide client side image processing
- If you using JavaFX instead of traditional Swing and Java 2D, you have possibilities for an even more graphically compelling user experience
- You can provide instant zip and upload functionality, and so much more (see other article for more examples)
These and many more examples let me know that Java Applets are still alive, and will remain that way if Oracle, Sun and its Open Source Community continue to work hard to make client side Java a viable alternative to RIA development.