[Seasar-user:9767] Re: [Seasar2 + S2Dao]helper パッケージについて

yukari-m [E-MAIL ADDRESS DELETED]
2007年 8月 8日 (水) 11:32:50 JST


yukarimです。

大谷様 せとあずさ様 小林様、
ご回答ありがとうございました。

再度質問させて下さい。

> 普通に Dao のプロパティを持たせれば DI されます.
> 
> public class FooHelper {
>   private HogeDao hogeDao;
> 
>   public void setHogeDao(HogeDao hogeDao) {
>     this.hogeDao = hogeDao;
>   }
> 
>   ...
> }

diconファイル等を確認してみましたが、
helperクラス内のDaoのプロパティ(mstEraDao)がnullになり
java.lang.NullPointerExceptionが発生します。
diconファイルの設定が悪く、DIできていないのでしょうか?
教えてください。

public class WarekiHelper {

  private MstEraDao mstEraDao;

  public MstEraDao getMstEraDao() {
	return mstEraDao;
  }

  public void setMstEraDao(MstEraDao mstEraDao) {
	this.mstEraDao = mstEraDao;
  }

  public String getWareki(Date cDate){
	//マスタから検索する
	mstEra = mstEraDao.selectEra(cDate);	←Daoがnullになり
ます。
 
	....
  }
}


開発環境は以下の通りです。

S2のバージョン:2.4.16 SMART deployです。
S2Daoのバージョン:1.0.45
Teedaのバージョン:1.0.8
diconファイルの設定:

 * creator.dicon
  <?xml version="1.0" encoding="Shift_JIS"?>
  <!DOCTYPE components PUBLIC "-//SEASAR2.1//DTD
S2Container//EN"
  "http://www.seasar.org/dtd/components21.dtd">
  <components>
     <include path="convention.dicon"/>
     <include path="customizer.dicon"/>
     <component
class="org.seasar.framework.container.creator.PageCreator"/>
     <component
class="org.seasar.framework.container.creator.ActionCreator"/>
     <component
class="org.seasar.framework.container.creator.DaoCreator"/>
     <component
class="org.seasar.framework.container.creator.DtoCreator"/>
     <component
class="org.seasar.framework.container.creator.DxoCreator"/>
     <component
class="org.seasar.framework.container.creator.HelperCreator"/>
     //以下略
  </components>
	

以上、宜しくお願い致します。



--------------------------------------
Easy + Joy + Powerful = Yahoo! Bookmarks x Toolbar
http://pr.mail.yahoo.co.jp/toolbar/




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