[Seasar-user:16207] Re: [S2JPA] PersistenceUnitInfoFactoryImplのDEFAULT_DATASOURCE
Akira Asakawa
[E-MAIL ADDRESS DELETED]
2008年 11月 2日 (日) 01:17:12 JST
淺川です。
Koichi Kobayashi さんは書きました:
> 小林 (koichik) です.
>
> Date: Sat, 01 Nov 2008 23:09:06 +0900
> From: Akira Asakawa <[E-MAIL ADDRESS DELETED]>
> To: [E-MAIL ADDRESS DELETED]
> Subject: [Seasar-user:16205] Re: [S2JPA] PersistenceUnitInfoFactoryImplのDEFAULT_DATASOURCE
>
>
>> ただ、定義されているかわからない"jdbc/dataSource"を
>> 固定で返すのもどうかと思います(苦肉の策なのだとは思いますが)。
>>
>
> 固定ではありません.
> [Seasar-user:16204] で書いたように,この値は
> PersistenceUnitInfoFactoryImpl の
> defaultNonJtaDataSource プロパティで変更できますし,
> jdbc/dataSource が存在しないなら変更すべきです.
>
>
「固定である」というのは、jpa-support.diconを
オーバーライドしない限り固定であるという意味です。
他に何か簡単に変更する方法はあるのでしょうか?
そういった特殊な対策をせずに、自然に使えた方がよいと思ったので。
>> それでも、TopLinkとS2JPAの組み合わせで起きる現象なので、
>> S2TopLink-JPAもしくはS2JPAで対応すべきだとも思うのですが、
>> いかがでしょうか?
>>
>
> 仕様で明示されていないのに対応「すべき」とは
> 思いません.
> せめて WebSphere,WebLogic,Oracle AS,
> JBoss AS,Geronimo など,主要な AP サーバが
> 全て null を返しているというくらいの材料が
> あれば検討しますが.
>
S2TopLink-JPA側での対応も含め、何らかの方法で
対策することも可能ではないか?という意味です。
nullを返す仕様にこだわってはいませんし、
実際にnullを返す解釈をしている実例を挙げただけです。
「nullを返してはならない」とも定義されていないですし。
対応される気はないとのことですので、
これ以上は不毛だと思いますが。
> TopLink が <non-jta-data-source> を参照するなら,
> <non-jta-data-source> を指定するのが唯一正しい
> 対応ではないでしょうか.
>
おそらく最も正しい対応は、意味不明なデフォルトを返さずに、
GlassFishのように、JTA環境で<non-jta-data-source>を
要求された場合は<jta-data-source>のJTAに関連付いていない
ビューであるデータソースを返すことだと思います。
Seasar-user メーリングリストの案内