実際、HTML<input type="file">
要素を介してファイルのアップロードを再開することはできません。つまり、multipart/form-data
それをサポートするエンコーディングには何もありません。さらに、それをサポートする標準形式のエンコーディング仕様はありません。基本的に、カスタムの HTTP リクエスト形式を発明する必要があります。
JFileChooser
Java 用語では、Swingを使用してファイルを選択しURLConnection
、それを HTTP 経由でサーバーに送信するためのアプレットまたは webstart アプリケーションを自作するのが最善の策です。Servlet
サーバー側では、カスタム リクエスト形式を理解し、それに応じて部分アップロードを処理するカスタムが必要です。
このすべてが可能なサードパーティのアプレットがあります: JumpLoader。そのホームページは残念ながら現在ダウンしています (ただし、Google キャッシュを試すことはできます)。要するに、サーブレットが部分を接着できるように、アップロード リクエストとともに特定の HTTP リクエスト パラメータを送信しmultipart/form-data
、部分アップロードかどうか、また部分アップロードの場合はどのインデックスから開始するかをサーバー側に伝えます。
次に、これらすべてを JSF と統合するには、アプレットがセッション ID を URL パス フラグメントとして渡し、サーブレットが JSF アプリケーションと同じ HTTP セッションを共有するようにするのが最善の方法です。このようにして、アップロード サーブレットはセッション スコープの JSF マネージド Bean にアクセスでき、JSF アプリケーションは HTTP セッションでいくつかのサーブレット固有の変数をポーリングできます。