画像のアップロードとリサイズ処理

画像のアップロードとリサイズ処理を作ってるよ。
と org.jboss.seam.ui.graphicImage.Image の組み合わせがなかなか便利だよ。

アップロード画面だよ。

<h:form enctype="multipart/form-data">
    <s:fileUpload id="picture" data="#{register.picture}" />
</h:form>
<h:commandButton action="#{register.upload}" value="upload" />

register.picture は InputStream型でもいいらしいけど動かなかったよ・・・。

Beanにセットされた値を
Image#setInput
 Image型に設定して
Image#scaleToWidth
 リサイズ処理ができるよ。

Image#getContentType.getExtension
 これで画像の拡張子も取得できるよ。

アップロードした画像表示だよ。
データがbyte[]型で保持しているなら

<s:graphicImage value="#{fileUploadBean.picture}">

ファイルとして存在しているなら

<h:graphicImage value="#{fileUploadBean.picturePath}">

だよ。

http://www.jbug.jp/trans/jboss-seam-2.0.1.GA/ja/html/controls.html
http://docs.jboss.com/seam/2.0.0.GA/ui/apidocs/org/jboss/seam/ui/graphicImage/package-summary.html