The standard HTML
<input type="file"> already can't do it. So the
<t:inputFileUpload> which just renders exactly that HTML element is out of question. Also, Flash also doesn't allow folder selection due to security restrictions. So, the
<rich:fileUpload> is also out of question.
Your best bet is using a Java applet which uses the Swing
JFileChooser which allows you to select a directory. You could then write some Java code which collects all files in that folder and uploads it to the server side by
URLConnection or HttpClient. Then you just embed that applet in your JSF page the usual plain HTML/JS way. Instead of reinventing the applet wheel, you could also go for an existing 3rd party applet like JumpLoader or JUpload. Both support uploading whole directories.
No, there comes no existing 3rd party JSF component to mind which does the same job.