[Seasar-user:19393] Re: dataSourceNameはnullあるいは空であってはいけません

Koichi Kobayashi [E-MAIL ADDRESS DELETED]
2010年 2月 26日 (金) 20:01:00 JST


小林 (koichik) です.

Date:    Fri, 26 Feb 2010 19:33:29 +0900
From:    吉村 実 <[E-MAIL ADDRESS DELETED]>
To:      <[E-MAIL ADDRESS DELETED]>
Subject: [Seasar-user:19392] Re: dataSourceNameはnullあるいは空であってはいけません

> 頂いたご回答と少しずれてしまうのですが、
> 以下のような設定ファイルで、
> 動的にA_DBとHoge_DBにアクセスするようにしたいのですが、

見たところ,A_DB と Hoge_DB で Dao が分かれてますが,
これは JDBC の設定ドキュメントにおける
「異なった種類のデータソースを使い分ける」では
ないでしょうか?

異なった種類というのは Oracle と DB2 というような
意味だけではなく,同じ Oralce の異なったスキーマ
なども含みます.
異なった種類の「DBMS」ではなく「DB」であることに
注意してください.

であれば,「異なった種類のデータソースを
使い分ける」を参照して,データソースごとに
dicon ファイルを作成してください.

http://s2container.seasar.org/2.4/ja/jdbc.html#DataSourceStaticSwitching

一つの jdbc.dicon に複数のデータソースを
設定するのはトラブルの元なのでやめた方が
いいです.

その上で,S2Dao の設定ファイルも DB ごとに
別々に作成し,dao_x.dicon は jdbc_x.dicon を,
dao_y.dicon は jdbc_y.dicon だけをインクルード
するようにしてください.

dicon の構成は以下のようになります.

jdbc.dicon
  <include path="jdbc_x.dicon"/>
  <include path="jdbc_y.dicon"/>

jdbc_x.dicon
  データソース X の設定

jdbc_y.dicon
  データソース Y の設定

dao.dicon
  <include path="dao_x.dicon"/>
  <include path="dao_y.dicon"/>

dao_x.dicon
  <include path="jdbc_x.dicon"/>
  Dao X の設定

dao_y.dicon
  <include path="jdbc_y.dicon"/>
  Dao Y の設定


「異なった種類のデータソースを使い分ける」に
該当しないのであれば,そもそもどういったことが
やりたいのか,きちんと説明してください.


-- 
<component name="koichik">
    <property name="fullName">"Koichi Kobayashi"</property>
    <property name="email">"[E-MAIL ADDRESS DELETED]"</property>
    <property name="blog">"http://d.hatena.ne.jp/koichik"</property>
</component>



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