[Seasar-user:6917] Re: [S2Struts+S2Dao]tiles.Controllerを利用したクラスのDaoの指定について

Katsuhiko Nagashima [E-MAIL ADDRESS DELETED]
2007年 3月 28日 (水) 08:52:59 JST


永島です。

返信が遅くなりすみません。

> Action以外のformクラスなどで使用したい場合も同様に使えないと思った方が良いでしょうか?

はい。Formクラスについても
セッターインジェクションによる自動バインディングは使えません。

> S2Daoの機能にセッターインジェクションによる自動バインディングがどのクラスでもできる手法が備わっていると
> 便利ですね。

この自動バインディングが使えないのは、
Formクラスやtiles.Controllerクラスのインスタンスを
S2Container経由で取得していないためです。。。
この機能を提供するためにはS2Strutsで対応する必要がありますが、
現状ではサポートする予定はないです。
同様の要望が他にもありましたら、そのときに検討したいと思います。

よろしくお願いします。


07/03/23 に 田中 修<[E-MAIL ADDRESS DELETED]> さんは書きました:
> 永島さん
> 情報有難うございます。
>
> 田中 修です。
>
> ログにもS2Containerがありませんのようなエラーが表示されていました。
> なんとか繋がらないものか色々試しましたが、
> よく分かりませんでした。。。
>
> こちらを使用したいと思います。
> XxDao dao = (XxDao)
> SingletonS2ContainerFactory.getContainer().getComponent(XxDao.class);
>
> Action以外のformクラスなどで使用したい場合も同様に使えないと思った方が良いでしょうか?
> S2Daoの機能にセッターインジェクションによる自動バインディングがどのクラスでもできる手法が備わっていると
> 便利ですね。
>
> いろいろと調べていきたいと思います。
> ありがとうございます。
>
> > -----Original Message-----
> > From: [E-MAIL ADDRESS DELETED]
> > [mailto:[E-MAIL ADDRESS DELETED]]On Behalf Of Katsuhiko
> > Nagashima
> > Sent: Thursday, March 22, 2007 10:20 PM
> > To: [E-MAIL ADDRESS DELETED]
> > Subject: [Seasar-user:6823] Re:[S2Struts+S2Dao]tiles.Controllerを利用
> > し
> > たクラスのDaoの指定について
> >
> >
> > 永島です。
> >
> > org.apache.struts.tiles.Controllerのクラスは
> > TilesRequestProcessor内でインスタンスを生成されています。
> > S2Containerで管理されていないので、
> > セッターインジェクションによる自動バインディングはできません。
> >
> > Dao等のS2Containerに登録されているコンポーネントは
> > XxDao dao = (XxDao)
> > SingletonS2ContainerFactory.getContainer().getComponent(XxDao.class);
> > で取得することで、Controllerのクラスでも利用できます。
> >
> >
> > 07/03/22 に 田中 修<[E-MAIL ADDRESS DELETED]> さんは書きました:
> > > 田中 修です。
> > >
> > > たびたび失礼します。
> > > 環境は
> > > struts1.2.9
> > > S2Struts1.2.9
> > > S2Dao1.0.41-RC1
> > > S2.3.18
> > > を使用しています。
> > >
> > > org.apache.struts.tiles.Controllerを利用したクラスを
> > > XXControllerとして作成しています。
> > > このXXControllerにS2StrutsのActionのように
> > > private XXDao xxDao
> > > public XXDao getXxDao();
> > > public void setXxDao(XXDao xxDao);
> > > を追加して
> > > this.xxDaoをexecute(・・・)にて使用したいのですが
> > > diconにはどのように追記したら宜しいでしょうか?
> > > ご存知の方いらっしゃいましたらご教授お願いします。
> > >
> > > ActionとDaoのコンポーネントの連携はサイトのweb.xmlと
> > struts-config.xmlの設定で
> > > 実行することができました。(なんとか・・・
> > >
> > > よろしくおねがいします。
> > >
> > > _______________________________________________
> > > Seasar-user mailing list
> > > [E-MAIL ADDRESS DELETED]
> > > https://ml.seasar.org/mailman/listinfo/seasar-user
> > >
> >
> >
> > --
> > Katsuhiko Nagashima
> > _______________________________________________
> > Seasar-user mailing list
> > [E-MAIL ADDRESS DELETED]
> > https://ml.seasar.org/mailman/listinfo/seasar-user
> >
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
>


-- 
Katsuhiko Nagashima



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