[Seasar-user:15250] Re: [S2Dao] データソースを動的に変更したい
Koichi Kobayashi
[E-MAIL ADDRESS DELETED]
2008年 8月 1日 (金) 18:00:29 JST
小林 (koichik) です.
Date: Fri, 01 Aug 2008 09:34:09 +0900
From: 松崎 学 <[E-MAIL ADDRESS DELETED]>
To: [E-MAIL ADDRESS DELETED]
Subject: [Seasar-user:15245] Re: [S2Dao] データソースを動的に変更したい
> > DataSourceFactory の設定が見あたらないような?
> DataSourceFactoryの設定も必要なのですね。
> すみませんが、設定内容をお教えいただけませんか?
SelectableDataSourceProxy と一緒に
<component name="dataSourceFactory"
class="org.seasar.extension.datasource.impl.DataSourceFactoryImpl"/>
を定義してください.
master,financial それぞれに独立した
DataSourceFactory が必要です.
SelectableDataSourceProxy を一つだけ使う場合は
jdbc-extension.dicon に定義されているデフォルトの
DataSourceFactory を使えばいいのですが,今回の場合
SelectableDataSourceProxy が二組あるので,
DataSourceFactory も二組必要です.
# ドキュメントは SelectableDataSourceProxy が
# 一組の場合を説明していて,複数ある場合の
# 説明がありません.追記しておきます.
DataSourceFactory#setSelectableDataSourceName()
も master,financial 別々に設定してください.
@Binding("jdbc_master.dataSourceFactory")
public DataSourceFactory masterDataSourceFactory;
@Binding("jdbc_financial.dataSourceFactory")
public DataSourceFactory financialDataSourceFactory;
masterDataSourceFactory.setSelectableDataSourceName("jdbc_master.it");
または
masterDataSourceFactory.setSelectableDataSourceName("jdbc_master.itdp");
financialDataSourceFactory.setSelectableDataSourceName("jdbc_financial.it");
または
financialDataSourceFactory.setSelectableDataSourceName("jdbc_financial.itdp");
DataSourceFactory が一つだけだと,
masterDataSourceFactory.setSelectableDataSourceName("jdbc_master.it");
とした場合,financial の SelectableDataSourceProxy も
jdbc_master.itDataSource を使ってしまいます.
--
<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 メーリングリストの案内