ファイルアップロードをするには?

http://forum.java.sun.com/thread.jsp?forum=427&thread=473135

ファイルアップロードは、JSF 1.0の仕様上は定義されていません。よってRIにはその機能はありません。JSFアプリケーションでファイルアップロードを行うには、以下のような方法があります。

  • A.ファイルアップロードはJSF外で行う
  • B.ファイルアップロードを行う独自拡張のUIComponentを使う

Aの方法は、その部分だけFacesServletを呼ばない方法です(と思う)。まあ、別に問題なくできるでしょうが、そこだけ特殊処理という感じで痒い感じです。

Bの方法は、JSFの仕様外の独自拡張です。MyFacesIBM実装のJSFでは、ファイルアップロードのUIComponentが実装されており利用することができます。これらの実装を使う、あるいは自分で作ることで、JSFの一部としてファイルアップロードを実現できます。ただ、この場合移植性は損なわれます。


というか、よく分からないのですが、なんで、頻繁に使われる可能性のあるUIが仕様に入ってないのでしょうか?ツリーやファイルアップロードのコンポーネントがないのでしょうか?もちろん、全部与えられないと作りたくないという気もないし、ないからこそ作るのですが、利用度的に仕様内であってもいい気もします。。。そのあたりの話題も上記URLのスレッドで行われてましたが、どうも読み解けません(英語もわかんないし)。