[seasar-dotnet:1671] Re: 2Container.NET、S2Dao.NET(Windows7)調査状況

kubo [E-MAIL ADDRESS DELETED]
2010年 5月 10日 (月) 18:16:34 JST


久保(jflute)です。

>> C. traceInterceptor だけ適用で pointcut を付ける
> traceInterceptor のaspectをPointcut="*"としましたが、
> Logicクラスのエンハンスが失敗する。
>
>>D. requiredTx だけ適用で pointcut を付けない
> Logicクラスのエンハンスが失敗する。

これはつまり、
「traceInterceptor だろうが requiredTx だろうが、
 pointcut を付けようが付けまいが、エラーが発生する」
ということでしょうか?(AもBもエラー?)

2010/5/10 Sohei Fukumura <[E-MAIL ADDRESS DELETED]>:
> お世話になっております。
> Sfukuです。
>
> 下記も確認いたしましたが、
>
>> C. traceInterceptor だけ適用で pointcut を付ける
> traceInterceptor のaspectをPointcut="*"としましたが、
> Logicクラスのエンハンスが失敗する。
>
>>D. requiredTx だけ適用で pointcut を付けない
> Logicクラスのエンハンスが失敗する。
>
>
> 以上、よろしくお願い致します。
>
>
> -----Original Message-----
> From: [E-MAIL ADDRESS DELETED] [mailto:[E-MAIL ADDRESS DELETED]] On Behalf Of kubo
> Sent: Monday, May 10, 2010 5:28 PM
> To: [E-MAIL ADDRESS DELETED]
> Subject: [seasar-dotnet:1669] Re:2Container.NET、S2Dao.NET(Windows7)調査状況
>
> 久保(jflute)です。
>
>> 試しに、Logicクラスに、
>> A. traceInterceptor だけを適用
>> B. requiredTx だけを適用
>> して、もう一度試してみて下さい。
>
> C. traceInterceptor だけ適用で pointcut を付ける
> D. requiredTx だけ適用で pointcut を付けない
>
> も、試してみて下さい。
> (pointcutの有無が影響するかどうかの確認)
>
> 2010/5/10 kubo <[E-MAIL ADDRESS DELETED]>:
>> 久保(jflute)です。
>>
>>> はい。Win7 で DynamicProxy を利用した環境でも、
>>> 検索してデータを実際に取得できました。
>>
>> なるほど、すると、Daoインターフェースのエンハンス自体は
>> うまくいっていて、Logicクラスのエンハンスがうまく
>> いっていないってことになりますね。
>> (もともとDaoの生成がうまくいかないって話になっていた
>> と思いますが、Logicの生成がうまくいかないって話になるのかと)
>>
>> 試しに、Logicクラスに、
>> A. traceInterceptor だけを適用
>> B. requiredTx だけを適用
>> して、もう一度試してみて下さい。
>> これで、Interceptorの違いが影響するのか
>> どうか(の可能性)が確認できます。
>>
>>> Win7 で DynamicProxy を利用できていないが、
>>> IKojinDaoを経由してDBアクセスを実行することができた。
>>> ということになるのでしょうか。
>> IKojinDaoでは、DynamicProxyを使っているので、
>> 微妙にこの表現は違います。
>> ("Win7 で DynamicProxy を利用できていないが" の部分)
>>
>> Logic -- DynamicProxyを使ってない (AOPを外した)
>> Dao -- DynamicProxyを使っている (そもそもAOPが必須)
>>
>> Win7 + DynamicProxyで、AOP利用の可否が、
>> 「DaoだとOKだが、LogicだとNG」
>> という状況がとりあえず判明したって感じですね。
>>
>> 2010/5/10 Sohei Fukumura <[E-MAIL ADDRESS DELETED]>:
>>> お世話になっております。
>>> Sfukuです。
>>> 久保(jflute)様、返信ありがとうございます。
>>>
>>>>KojinLogicImplからaspect属性を全て排除したら、
>>>>Win7 で DynamicProxy を利用した環境でも、
>>>> (IKojinDaoを経由して)DBアクセスを実行することが
>>>>できた(例えば、検索してデータを実際に取得できた)、
>>>>ということでしょうか?
>>> はい。Win7 で DynamicProxy を利用した環境でも、
>>> 検索してデータを実際に取得できました。
>>>
>>>>KojinLogicからaspect属性を全て排除したということは、
>>>>KojinLogic には AOP が掛からない、とということです。
>>>>なので、"DynamicProxyではない" というか、
>>>>"そもそもこのクラスに対して Proxy を適用しない"
>>>>という解釈
>>> という事ですので、
>>> Win7 で DynamicProxy を利用できていないが、
>>> IKojinDaoを経由してDBアクセスを実行することができた。
>>> ということになるのでしょうか。
>>>
>>>
>>> 以上、よろしくお願い致します。
>>>
>>> -----Original Message-----
>>> From: [E-MAIL ADDRESS DELETED]
>>> [mailto:[E-MAIL ADDRESS DELETED]] On Behalf Of kubo
>>> Sent: Monday, May 10, 2010 4:30 PM
>>> To: [E-MAIL ADDRESS DELETED]
>>> Subject: [seasar-dotnet:1665] Re:2Container.NET、S2Dao.NET(Windows7)調査状況
>>>
>>> 久保(jflute)です。
>>>
>>> Sfukuさん、こんにちは
>>>
>>>> 1『traceInterceptor』や『RequiredTx』の使い方が悪いため、
>>>> 『traceInterceptor』や『RequiredTx』をaspectするとエラーが発生するのでしょ
>>>> うか。
>>>>
>>>> 2『traceInterceptor』はトレースを出力のため問題ない気がしますが、
>>>> 『RequiredTx』はTransactionを織り込んでいるため、
>>>> 『RequiredTx』をaspectしない場合、機能によっては問題が発生する可能性があ
>>>> る。
>>> ※丸付き数字を普通の数字に変えました。
>>>
>>> <1>
>>> Win7限定でエラーが出る原因がそもそも
>>> わかってないので、こういう質問をされても
>>> やっぱり、わからない、としか言いようがありません。
>>> ただ、Win7でなければちゃんと動いているので(そうなんですよね?)、
>>> 少なくとも使い方が悪いからっていうのは想像しにくいですね。
>>>
>>> <2>
>>> "機能によっては問題が発生する可能性がある"  かどうかは、
>>> アプリでの要件次第かと。ただ、通常はトランザクションなし
>>> でDBアクセスするというのは業務的に問題があることが
>>> 多いとは思われます。
>>>
>>>> そもそも<aspect>を全て排除したということは
>>>> Dynamicproxsyではないということでしょうか。
>>> KojinLogicからaspect属性を全て排除したということは、
>>> KojinLogic には AOP が掛からない、とということです。
>>> なので、"DynamicProxyではない" というか、
>>> "そもそもこのクラスに対して Proxy を適用しない"
>>> という解釈になります。
>>>
>>>> 次の記載に修正すると、DynamicProxsyでも動作する。
>>>>  <component class="Info.Logic.Impl.KojinLogicImpl" >
>>>>  </component>
>>>> ・・・
>>> ここちょっと大事ですね。
>>> 状況を詳しく確認させて下さい。
>>>
>>> KojinLogicImplからaspect属性を全て排除したら、
>>> Win7 で DynamicProxy を利用した環境でも、
>>> (IKojinDaoを経由して)DBアクセスを実行することが
>>> できた(例えば、検索してデータを実際に取得できた)、
>>> ということでしょうか?
>>> _______________________________________________
>>> seasar-dotnet mailing list
>>> [E-MAIL ADDRESS DELETED]
>>> https://ml.seasar.org/mailman/listinfo/seasar-dotnet
>>>
>>> _______________________________________________
>>> seasar-dotnet mailing list
>>> [E-MAIL ADDRESS DELETED]
>>> https://ml.seasar.org/mailman/listinfo/seasar-dotnet
>>>
>>
> _______________________________________________
> seasar-dotnet mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-dotnet
> _______________________________________________
> seasar-dotnet mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-dotnet
>


seasar-dotnet メーリングリストの案内