FormFile型をクラス内で生成する方法
ゲスト
ゲスト (tester)
ATOMRSS
  • コード求むID: 339
  • 登録日時:  2008/10/24 20:13
  • 最終更新日時: 2008/10/31 16:11
  • アクセス数: 373
  • タグ:  java struts
  • codeなにがしブックマークに追加する 0 users
  • このページを del.icio.us に追加
  • このページをはてなブックマークに追加

今、テストクラスを作成していてFormFile型をクラス内で生成しようとしています。
しかし、いい方法が検索しても見つからず、もし知っている方がいましたらご教授ください。
ちなみに、DiskFileというのを試しましたが警告で使用しない方が良いとでました。

環境
Java1.4.2_11
Struts1.2.8

コメント

これとか参考になりませんか?
http://www.javaroad.jp/opensource/js_struts20.htm

  • GoodJob
  • 0

  • ゲスト
  • 2:ゲスト (tester)
  • 2008/10/27 10:27

tetsuhonさん
返信ありがとうございます。
クラスの実装に関しては、上記の通り実装しています。

このクラスをテストするためにFormFileをクラス内で実装する方法ってありませんかね?

  • GoodJob
  • 0

ちなみにStrutsのAPIでは、DiskFileクラスの代わりに
Apache CommonsのFileUploadクラスを使いなさいと
記述があるのですが、そちらは検討されましたか?

http://www.javaroad.jp/servletjsp/sj_servlet12.htm

  • GoodJob
  • 0

  • ゲスト
  • 4:ゲスト (tester)
  • 2008/10/29 10:59

tetsuhonさん 
またまた、コメントありがとうございます。

>Apache CommonsのFileUploadクラスを使いなさいと・・・
もちろん、検討済みです。
一様導入も試しました。
ただ、他の部分でFormFileを使用しているため
合わせる方向で今回は、FormFileを使用することになりました。

  • GoodJob
  • 0

  • mmike
  • 5:mmike
  • 2008/10/29 13:59

テスト用に必要であるだけであれば、FormFileを実装した、テスト用のクラスを作ればよいのでは・・・?

  • GoodJob
  • 0

  • ゲスト
  • 6:ゲスト (tester)
  • 2008/10/29 17:29

mmikeさん
コメントありがとうござます。

FormFileを実装したテスト用のクラスってどんな感じでしょうか?
ちなみに、中身のあるFormFileインスタンス(サブクラスのインスタンス)を生成する場合を質問させていただいてます。

  • GoodJob
  • 0

mmikeさんが言ってらっしゃるのは、
多分、こんな感じですよね。

// テストクラスのメソッド
public public ActionForward execute(ActionMapping mapping, 
        ActionForm form,
        HttpServletRequest req, 
        HttpServletResponse res) throws Exception {

  FormFile uploadFile = new FormFile(){
    // 必要なメソッドを実装
  };
  // 以下のメソッドが実装されていると仮定
  ((MyActionForm)form).setFormFile(uploadFile);

  // テストされるActionクラス
  XXXAction action = new XXXAction();
  return action.execute(form,req,res);
}
本当はもうちょっとスマートな方法があるのかもしれませんが…。

  • GoodJob
  • 0

  • mmike
  • 8:mmike
  • 2008/10/30 15:39

>7:tetsuhon
そんな感じです。

>本当はもうちょっとスマートな方法があるのかもしれませんが…。
インナークラスとしてFormFileインタフェースを実装したクラスを用意したほうが、
コードは見やすいかもしれませんね^^;
ただ、テストコードなら、好みの部分もあるので書きやすい方法で良いのではないでしょうか。

私だとテスト用に1枚新規のクラスを作ってしまいます。
ファイル名を指定するなりFileObjectを渡すなりすると、
テスト用にそのファイルを読み込んだりする仕様にすると便利かもしれません。
※テストによってファイルを変更できるので。

GJ

  • ゲスト
  • 9:ゲスト (tester)
  • 2008/10/31 16:11

tetsuhonさん、mmikeさん
コメント&的確な情報ありがとうございます。

頂いた情報を元に作成してみようと思います。
本当にありがとうございました。

  • GoodJob
  • 0

前へ 1 次へ

コメントする

[block]から[/block]までの範囲はブロック表示されます。
部分的に目立たせたい時や、引用などにお使いください。

[code]から[/code]までの範囲は等幅表示されます。
ソースコードや設定ファイルの記述などにお使いください。

ゲスト投稿者:ゲスト:

関連ソースコード・ノウハウを登録

PDFLib | A library for processing PDF on the fly プレゼン公開・共有サイト handsOut.jp オープンタイプ株式会社 チーム・マイナス6% - みんなで止めよう温暖化

ブックマークコメント