0

私はJSFを初めて使用します。次の要件があります。commandButton をクリックすると、バッキング Bean メソッドを呼び出して、条件を満たすデータが存在するかどうかを確認します。はいの場合、ユーザーから上書きを確認します。ユーザーが OK と言った場合は、いくつかのパラメーターを設定してバッキング Bean の同じメソッドを呼び出し、プログラムにデータを上書きするように指示します。

私がやっていることは、commandButton のアクションをメソッド名として持つことです。バッキング Bean メソッドで、特定の条件を満たしているかどうかを確認し、データが既に存在するかどうかを確認します。はいの場合は、ページに戻って確認を求めてください。確認したら、ボタンのクリックメソッドを呼び出します。

問題は、ページに戻ると、ページの inputFileUpload コンポーネントの値が失われることです。

これを達成するために何ができますか?助けてください。

4

1 に答える 1

0

これは完全に HTML 仕様によるものであり、完全に JSF の制御外です。HTML 入力ファイル フィールドの値をサーバー側からの値で (再) 表示できないのは、セキュリティ上の理由から HTML 仕様によるものです。そうしないと、この回答に示されているようなハザード シナリオが発生する可能性があります。

確認中に入力ファイル フィールドが更新されないように、フォームを再設計する必要があります。これには特に JavaScript/ajax を使用できます。フォームを ajax で送信し、入力ファイル フィールドが ajax 応答で更新されていないことを確認するだけです。

于 2012-11-27T13:30:02.537 に答える