[Seasar-user:1667] Re: struts + dao 連携

fj-yasu@tgcc.tohoku-gakuin.ac.jp fj-yasu
2005年 3月 23日 (水) 16:39:35 JST


まつむらと申します。

私も(ちょっと前のバージョンの)S2Struts+S2Daoを使用していますが
分かる範囲でお答えします。

> 藤山と申します。
> 
> 現在 Struts + S2Struts + S2Dao を連携させるプログラムを作成しておりま
す。

−中略−

> エラー対象クラスファイルは以下の通りです。
> 
> --------------エラー対象クラス----------------------------------------
------------------------------------------------------------------------
--------
> public class LoginServiceImpl implements LoginService {
> 
>  private static final String PATH = "org/seasar/dao/examples/login/
LoginDao.dicon";
>      public boolean check (String username, String password) {
>   
>         S2Container container = S2ContainerFactory.create(PATH);  ←
ここでエラー
>         container.init();
>         
>         try {
>             LoginDao dao = (LoginDao) container
>                     .getComponent(LoginDao.class);
>             List users = dao.getAllUsers();
>             for (int i = 0; i < users.size(); ++i) {
>                 System.out.println(users.get(i));
>             }
> 
>         } 
>         catch (Exception e) {
>          e.printStackTrace();
>         }
>         
>         finally {
>             container.destroy();
>         }
> }

上で、 S2Container container = S2ContainerFactory.create(PATH);
としていますが、そうではなくDaoコンポーネントの定義(dicon)は
app.diconに関連付けてやって、このクラスではセッター・インジェクション
などでもらえばいいのではないでしょうか?



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