[Seasar-user:10234] Re: SMART deploy ルートパッケージを複数登録した場合の問題
Koichi Kobayashi
[E-MAIL ADDRESS DELETED]
2007年 8月 30日 (木) 23:00:30 JST
小林 (koichik) です.
Date: Thu, 30 Aug 2007 22:11:31 +0900
From: "溝口" <[E-MAIL ADDRESS DELETED]>
To: [E-MAIL ADDRESS DELETED]
Subject: [Seasar-user:10230] Re: SMART deploy ルートパッケージを複数登録した場合の問題
> ただし、compoentNameを指定するとTooManyRegistrationRuntimeExceptionが
> 出てしまいます。compoentNameを使って処理を組んでしまっていたので、これは
> SMART deployでは、どうしようもないということですね?。
> "daogen__anyService","daogen2__anyService"とかでプレフィックスで呼べるといいなと
> 思います。
どうなるか分かりませんが,ルートパッケージを
jp にして,subApplicationRootPackageName を
blue7 にすると,
"daogen_anyService","daogen2_anyService"
になるような気がします.
他がうまくいかないかもしれませんが.
ともあれ (JW),NamingConventionImpl を拡張して
頑張ればどうにかなるかもしれません.
Seasar2 として標準で対応することは (おそらく)
ないと思います.
問題を複雑にするだけのように思われるので.
> 次に、エラーになったパターンは、こんな感じです。
> package jp.blue7.daogen.service.impl;
> import jp.blue7.daogen.service.AnyService;
> import org.seasar.extension.unit.S2TestCase;
> public class AnyServiceImplTest extends S2TestCase {
> private AnyService service;
> protected void setUp() throws Exception {
> super.setUp();
> include("app.dicon");
> }
> public void testインスタンスを確認する() throws Exception {
> assertNotNull(service);
> }
> }
> 実験的にS2Unitを使用して動かしてみたときに、エラーを出していました。実際の
> 開発では、複数の複数のルートパッケージを登録しないので問題ないのですが、
> 今回、動作検証をするときにやった環境ではエラーになってしまいました。
> 例外は、java.lang.IllegalArgumentException: Can not set
> jp.blue7.daogen.service.AnyService field
> jp.blue7.daogen.service.impl.AnyServiceImplTest.service to
> jp.blue7.daogen.service.impl.AnyServiceImpl$$EnhancedByS2AOP$$b03be0
>
> という感じです。
スタックトレースをお願いします.
--
<signature>
<name>Koichi Kobayashi</name>
<e-mail>[E-MAIL ADDRESS DELETED]</e-mail>
</signature>
Seasar-user メーリングリストの案内