3

アップロードされたファイルの名前を表示できるように、ファイルajaxをアップロードする必要がありますが、primefaces、richfacesなどのjarファイルは追加しません。

私のフォームは、ajaxによってメソッドを呼び出す必要があるアップロードボタンがあるダイアログボックス内にあります。私のコードはこのようなものです...

<h:commandButton value="Upload" action="#{bean.uploadMethod}">
<f:ajax listener="#{bean.abcMethod}" event="click"/>
</h:commandButton>

また、ファイル名をリストに保存して表示するだけで、フォーム全体を送信できるかどうかも知りたいです。この提出物は、私がリストに名前を示したファイルもアップロードする必要があります。出来ますか?

4

2 に答える 2

2

また、AJAX を介したファイル (画像) のアップロードにも苦労しています。いくつかの方法と、Google や Dropbox などの企業がこれをどのように実装したかを調べました。

これまでのところ、次の 2 つの方法を見つけました。

  • を使用しiframeてファイルを送信します。これは実際には AJAX ではないため、ほとんどのブラウザで動作します。ただし、JSF での実装 (PrimeFaces 以外) はまだ見ていません。
  • ファイル クライアント側を base64 でエンコードし、AJAX 経由で送信し、サーバー側でデコードします。しかし、私は JSF での実装を見たことがなく、実際に何かを調理する時間がありませんでした。

迅速な解決策が必要な場合は、 (およびおそらく ) を使用できます。しかし、あなたはすでにそれらのいずれかを使用したくないと言っていました.

誰かがここに実際の解決策を投稿するのに十分親切かもしれませんが、私はアイデアを1つまたは2つ投入すると思いました. ;-)

于 2012-12-17T19:58:45.573 に答える
0

Primefaces は、完全に AJAX 対応のファイル アップロード JSF コンポーネントである FileUpload コンポーネントを提供します。

ショーケースの例はこちら

どのように機能するかは完全にはわかりませんが、HTML5 を通じて最新のブラウザー機能を利用していると思います。もちろん、この機能を使用するには、クライアントが HTML5 マークアップを理解できる最新のブラウザーである必要があります。

于 2012-12-17T20:13:51.123 に答える