[Seasar-user:16416] Re: [s2-container, s2axis2] SMARTDeploy対応

Mitsutaka Sato [E-MAIL ADDRESS DELETED]
2008年 11月 30日 (日) 12:48:05 JST


たびたびすみません。補足です。

テストケースをcooldeployで動かしてみても状況は変わりませんでした。
エラー内容は

org.seasar.framework.container.IllegalAutoBindingPropertyRuntimeException:
[ESSR0080]クラス(com.hoge.soap.services.impl.DealServiceImpl$$EnhancedByS2AOP$$1bb9696)のプロパティ(apiLogic)の自動設定に失敗しました

cooldeploy時のログで

2008-11-30 12:43:22.312 [DEBUG][main][S2ContainerUtil]
クラス(com.hoge.soap.logic.impl.ApiLogicImpl[apiLogic])のコンポーネント定義を登録します

と出ているので問題なくコンポーネントは登録されているようなのですが。。。

以上よろしくお願いいたします。


2008/11/30 Mitsutaka Sato <[E-MAIL ADDRESS DELETED]>

> 報告に不正確なところがありました。
>
> > このように対応してテストケースを流してみたり、サービスを起動させてみたりしたのですが、
>
> 実際にTomcatを起動して動作はOKでした。-> Cool Deploy
> 単体テストのときにのみ、現象が発生しました。 -> Warm Deploy
>
> テストケースではsetUpメソッドで app.dicon を includeしています。
>
> 以上よろしくお願いします。
>
>
> 2008/11/30 Mitsutaka Sato <[E-MAIL ADDRESS DELETED]>
>
> 佐藤と申します。
>> いつもお世話になっております。
>>
>>
>> SMARTDeploy対応していなかった(diconに全部コンポーネント定義を書いていた)s2axis2のプロジェクトで、logicとdxoだけSMARTDeploy対応しようとして、いかのことをしました。
>>
>> ・s2container.diconをsrc/main/resourcesに追加
>>
>> ・convention.diconを 同じく追加
>>     <component
>> class="org.seasar.framework.convention.impl.NamingConventionImpl">
>>         <initMethod name="addRootPackageName">
>>             <arg>"com.hoge.soap"</arg>
>>         </initMethod>
>>     </component>
>>
>> ・creator.dicon を同じく追加
>> <components>
>>     <include path="convention.dicon"/>
>>     <include path="customizer.dicon"/>
>>     <component class="org.seasar.framework.container.creator.DxoCreator"/>
>>     <component
>> class="org.seasar.framework.container.creator.LogicCreator"/>
>> </components>
>>
>> ・customizer.diconを同じく追加
>> <components>
>>   <include path="default-customizer.dicon"/>
>>   <component name="logicCustomizer"
>> class="org.seasar.framework.container.customizer.CustomizerChain">
>>     <initMethod name="addCustomizer">
>>       <arg>traceCustomizer</arg>
>>     </initMethod>
>>   </component>
>>   <component name="dxoCustomizer"
>> class="org.seasar.framework.container.customizer.CustomizerChain">
>>     <initMethod name="addCustomizer">
>>       <arg>traceCustomizer</arg>
>>     </initMethod>
>>     <initMethod name="addCustomizer">
>>       <arg>s2DxoCustomizer</arg>
>>     </initMethod>
>>   </component>
>> </components>
>>
>> ・app.dicon に以下のincludeを追加。
>>    <include path="convention.dicon" />
>>     <include path="aop.dicon"/>
>>     <include path="dxo.dicon"/>
>>
>> ・SOAPサービスはこれまでどおり、app.diconに定義
>>     <component name="DealService"
>> class="com.hoge.soap.services.impl.DealServiceImpl">
>>         <meta name="axis-service">
>>             <component class="org.seasar.remoting.axis2.ServiceDef">
>>                 <initMethod name="addParameter">
>>                     <arg>"useOriginalwsdl"</arg>
>>                     <arg>"true"</arg>
>>                 </initMethod>
>>                 <initMethod name="addParameter">
>>                     <arg>"modifyUserWSDLPortAddress"</arg>
>>                     <arg>"false"</arg>
>>                 </initMethod>
>>             </component>
>>         </meta>
>>         <aspect>j2ee.requiredTx</aspect>
>>     </component>
>>
>> このように対応してテストケースを流してみたり、サービスを起動させてみたりしたのですが、
>> 上記のサービスクラスへロジッククラスを自動セットできませんでしたというエラーが発生してしまいます。
>>
>> ログを見ると、warmdeploy.diconが呼ばれていますので、うまくSMARTDeployが動いているように思えるのですが。。。
>> なにか原因わかりましたらご教授お願いいたします。
>>
>>
>>
>
-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: <http://ml.seasar.org/archives/seasar-user/attachments/20081130/c32e2476/attachment-0001.html>


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