Uploading the directory isn't the problem. Selecting all the files in the directory is. I'm using a RichFaces JSF control to do multi-file uploads, but the user has to select each file individually.
Actually, there's one way that definitely would work, and that's to run a true client-side application such as a Javaapplet. But in order to make the applet capable of uploading, you'd have to digitally sign it, since unsigned applets aren't allowed to access the user's local filesystem. And getting signed applets accepted by the user's browser is more pain than casual Internet users are generally willing to put up with.
An IDE is no substitute for an Intelligent Developer.