[Seasar-user:10123] [teeda] tomahawk利用時のファイルアップロードについて

山下 真里 [E-MAIL ADDRESS DELETED]
2007年 8月 27日 (月) 15:17:01 JST


いつもお世話になっております。
山下です。

Teeda 1.0.10を利用させていただいております。
ファイルのアップロードを実現しようと思いまして、
teeda-html-example を参考にし、必要なjarファイル(commons-fileupload-1.2.jar、commons-io-1.3.
2.jar、tomahawk-1.1.1.jar)を配置し、htmlファイルとPageクラス、及びweb.xmlへの設定を
行わせていただきました。

準備が整ったあと、実際に動作を確認したところ、下記のログが発生し、web.xmlへ指定した場所に
ファイルが作られませんでした。
teeda-html-exampleのuploadで、動作確認をした場合は、ファイルは xxxx.tmpといったファイル名で作
成され、トレースログには、WARNがでておりました。
注意する点として、html側のカスタムタグの記述部分と、web.xmlの定義の箇所かと思いますが、
設定としてあと、何か必要なものはございますでしょうか。
お手数をおかけしますが、ご教授お願いいたします。

山下 真里

========== トレース =============================================================

DEBUG 2007-08-27 15:05:14,843 [http-8080-2] HOT deployを開始します
DEBUG 2007-08-27 15:05:14,937 [http-8080-2] クラス(net.mmm.web.product.UploadPage[product_up
loadPage])のコンポーネント定義を登録します
WARN  2007-08-27 15:05:14,953 [http-8080-2] net.mmm.web.product.UploadPage$$EnhancedByS2AOP$
$145240aのプロパティ(uploadedFile)が見つからないので設定をスキップします
DEBUG 2007-08-27 15:05:14,953 [http-8080-2] クラス(net.mmm.interceptor.LoginAuthInterceptor[
loginAuthInterceptor])のコンポーネント定義を登録します
DEBUG 2007-08-27 15:05:14,953 [http-8080-2] トランザクションを開始しました
DEBUG 2007-08-27 15:05:14,953 [http-8080-2] トランザクションをコミットしました
DEBUG 2007-08-27 15:05:14,953 [http-8080-2] トランザクションを開始しました
DEBUG 2007-08-27 15:05:14,953 [http-8080-2] トランザクションをコミットしました
DEBUG 2007-08-27 15:05:14,968 [http-8080-2] HOT deployを終了しました
DEBUG 2007-08-27 15:05:27,609 [http-8080-2] HOT deployを開始します
DEBUG 2007-08-27 15:05:27,625 [http-8080-2] クラス(net.mmm.web.product.UploadPage[product_up
loadPage])のコンポーネント定義を登録します
WARN  2007-08-27 15:05:27,656 [http-8080-2] net.mmm.web.product.UploadPage$$EnhancedByS2AOP$
$123fee1のプロパティ(uploadedFile)が見つからないので設定をスキップします
DEBUG 2007-08-27 15:05:27,656 [http-8080-2] トランザクションを開始しました
DEBUG 2007-08-27 15:05:27,656 [http-8080-2] トランザクションをコミットしました
DEBUG 2007-08-27 15:05:27,656 [http-8080-2] HOT deployを終了しました


=========== web.xml =======================================================
    <filter>
        <filter-name>tomahawkFilter</filter-name>
        <filter-class>org.apache.myfaces.component.html.util.ExtensionsFilter</filter-class>

        <init-param>
            <param-name>uploadMaxFileSize</param-name>
            <param-value>100m</param-value>
        </init-param>
        <init-param>
            <param-name>uploadThresholdSize</param-name>
            <param-value>100k</param-value>
        </init-param>
        <init-param>
            <param-name>uploadRepositoryPath</param-name>
            <param-value>C:\tmp</param-value>
        </init-param>
    </filter>

============ upload.html ==================================================
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/
DTD/xhtml1-transitional.dtd">
<html xmlns:x="http://myfaces.apache.org/tomahawk"
  xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
<form id="Form" enctype="multipart/form-data">
<div><span id="allMessages"></span></div>

<x:inputFileUpload
  id="uploadedFile1"
  value="#{product_uploadPage.uploadedFile}"
/>


<input
  type="submit"
  id="doUpload"
  value="Upload"
 />
<span id="filename">name</span>
<span id="fileSize">size</span>
</form>
</body></html>

=============== UploadPage.class ==============================================
package net.mmm.web.product;

import org.apache.myfaces.custom.fileupload.UploadedFile;

public class UploadPage {

	private UploadedFile uploadedFile;

	private String filename;
	
	private long fileSize;
	
	public UploadedFile getUploadedFile() {
		return uploadedFile;
	}

	public void setUploadedFile(UploadedFile uploadedFile) {
		this.uploadedFile = uploadedFile;
	}

	public Class doUpload() {
		filename = uploadedFile.getName();
		fileSize = uploadedFile.getSize();
		return null;
	}

	public Class initialize() {
		return null;
	}

	public Class prerender() {
		return null;
	}

	public String getFilename() {
		return filename;
	}

	public void setFilename(String filename) {
		this.filename = filename;
	}

	public long getFileSize() {
		return fileSize;
	}

	public void setFileSize(long fileSize) {
		this.fileSize = fileSize;
	}

}


Seasar-user メーリングリストの案内