JSF 2アプリケーションのページにファイルをダウンロードするリンクを表示する必要があります。今、問題は、ファイルが、作成時にデータベースへの新鮮な外観に依存するデータを含んでいることです。しかし、私がしたいのは、それを作成し、ユーザーに1つのアクションでそれをダウンロードするリンクを与えることです。アクションリンクと1つのリンクをダウンロード
これは、ファイルを生成するためのボタンと、生成されたファイルをダウンロードするためのリンクで置き換えるという2つのアクションで非常に簡単です。
これはもう一度commandLinkのワンクリックで行うことができますか?
EDIT、下記のBalusCのコメントに従ってください。ここでは私がやろうとしていることの詳細を、これまで行ってきました。私はxhtmlでこれを持っています:
<h:panelGroup rendered="#{!bean.showLinkToExcelFile()}">
<h:form>
<td><h:commandButton value="Generate list of your Bids for download" action="#{bean.createBidsList()}"/></td>
</h:form>
</h:panelGroup>
<h:panelGroup rendered="#{bean.showLinkToExcelFile()}">
<td><a href="#{bean.findBidsListFileName()}">Download Your Bids</a></td>
</h:panelGroup>
これは機能します。このボタンは、Excelファイルを作成して場所に保存し、データベース内のファイル名を更新します。次に、リンクがファイルを提供します。しかし、それはユーザーのための2つのステップのプロセスです。私がそれが欲しいのはただの一歩です。例えば一つのリンク、そのよう:
<a href="#{bean.findBidsListFileName()}">Download Your Bids</a>
または、最も可能性の高い、JSFのcommandLinkは、バックエンド上のファイル/リソース/場所に保存し、かつシームレスに「保存」ダイアログを開き、Excelを作成します。ユーザのマシン上で実行されます。
答えは:はい。より多くの質問がありますか?必要に応じて要件を実装している間に、正確にどこに詰まっているのかを示して詳細を述べてください。 – BalusC
ありがとう、BalusC。私はその質問を編集した。 – Herzog