NetBeansTweet今日もICEfacesでいくぞい。今回はファイルアップロードをやってみる。JSFではファイルアップロードコンポーネントが用意されていないが、ICEfacesは最初からある。アップロードの処理を記述するのだが、ポイントはこのコントロールのアクションメソッドで実行されるわけではないこと。リスナーなのに注意だ。リスナーのコードは以下のとおり。ActionEventから取得して処理をする。コンポーネントバインドしても取得できないので注意。}}テキストエリアを貼り付けて表示するためのtextプロパティを用意してある。ログのように見るため。実行!ファイル名やファイルのサイズがちゃんと取得できているようだ。ところで、ファイルはgetFile()でFileが取得できるのだが、このアップロードされたテンポラリファイルはどこにあるのだろうか?先ほどのリスナーメソッド以下の一文を付け加えてみる。Printing.pdfどうやらデプロイした場所にデフォルトでアップロードされるようだ。当たり前だが、このパスだと予測はしにくくても直接ファイルが外から見えてしまう。それらしい設定はあるのだろうか?たぶんこの「uploadDirectory」だ!ここを設定してみる。「WEB-INF/temp」と入れてみた。Printing.pdfうん、問題ない。「uploadDirectoryAbsolute」を「true」似設定してみる。Printing.pdfん〜予想と違う。今度は「uploadDirectory」に「/WEB-INF/temp」と入れてみた。先頭にスラッシュをいれただけ。Printing.pdfうん。ちなみに先頭にスラッシュをつけてる状態で相対パスにしてもちゃんと動く。以上でICEfacesでは簡単にファイルアップロードが実装できるのがわかっただろうか。ちなみにファイルアップロードのサイズ制限はweb.xmlのコンテキストパラメータに定義する。「com.icesoft.faces.uploadMaxFileSize」というのがキーだ。月別アーカイブおすすめはてなブログをはじめよう!shinさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。