Name
Password

ファイルアップロード

  • 2007-05-16 15:34:25

ファイルをアップロードするタイプのアプリケーションを作るためには、org.seasar.ymir.FormFileクラスを使います。(StrutsのFormFileクラスと似ています。)

具体的には次のようにします。

まずテンプレートにtype="file"であるinputタグを持つformタグを書きます。

<form tal:attributes="action page:/upload.do" method="post" enctype="multipart/form-data">
  <p>ファイルを指定して下さい:<input type="file" name="file" /></p>
  <p><input type="submit" value="アップロード" /></p>
</form>

対応するPageクラスにはfileプロパティ用のsetterメソッドを用意します。プロパティの型はorg.seasar.ymir.FormFileとします。(自動生成機能がONであれば自動的にsetterメソッドが生成されます。)

これで、アップロードされたファイルに関する情報を持つFormFileオブジェクトが自動的にfileプロパティにセットされます。