[Javalist] Spring AOP advice nem fut

Tamás Magyar magyusz at gmail.com
2013. Okt. 4., P, 01:34:21 CEST


AopContext.currentProxy()

2013/10/4 István Székely <istvan.szekely1 at gmail.com>:
> Hali!
>
> Igen, ez kimaradt: <aop:aspectj-autoproxy proxy-target-class="true"/>
>
> Tehát CGLIB-es proxy-k vannak. A többi rész is pont úgy van, ahogy mondod,
> a() hívja b()-t, és mindkét metódus ugyanabban az osztályban van. Először
> b() private volt, de aztán public-ot csináltam belőle, nehogy az legyen a
> baj, de úgy sem megy.
> [Van egy olyan forgatókönyv is, hogy b() absztrakt, és egy másik osztályban
> van implementálva, és akkor sem működik.]
>
> Nem emlékszel, mi volt a megoldás? A natív AspectJ-t kihagynám, ha lehet.
>
> Üdv,
> Stivi
>
>
> 2013. október 4. 0:11 Ize írta, <sicher at freemail.hu>:
>
>> Hali!
>>
>> Nekem valamikor regen akkor volt ilyen problemam, ha a metodus osztalyon
>> belulrol hivodott (hiaba volt public). Mitha osszefuggene a dolog a a
>> proxy-based AOP-pal (tippem szerint ezt hasznalod).
>> A public nem mindegy, mert a proxy-s csak azzal mukodik,
>> private/protected-hez native AspectJ weaving kell.
>>
>> Udv.:
>>   Ize
>>
>>
>> On 2013. 10. 03. 16:24, István Székely wrote:
>>
>> Sziasztok!
>>
>> Van egy annotációm, amit metódusok megjelölésére használok. Van egy Spring
>> AOP-s aspect, ami úgy van megadva, hogy bizonyos csomagban és az
>> alcsomagokban az annotációval megjelölt metódusokra fusson le egy @Around
>> advice.
>>
>> Tehát valami ilyesmi:
>>
>> @Aspect
>> public class A {
>>     @Pointcut("within(com.x.y.z..*) && @annotation(com.a.b.C)")
>>     public void p() {}
>>     @Around("p()")
>>     public void advice(...) { ... }
>> }
>>
>> Adott egy osztály, amiben van két metódus, a() és b(), közvetlenül egymás
>> alatt definiálva, és mindkettő public (bár ez talán mindegy is). Ha az
>> annotációt a-ra teszem, akkor szépen lefut az advice, ha b-re, akkor pedig
>> nem.
>>
>> Hogyan lehetséges ez, és főleg, mi a megoldás?
>>
>> Üdv
>> Stivi
>
>
>
> _______________________________________________
> Javalist mailing list
> Javalist at lists.javaforum.hu
> http://lists.javaforum.hu/mailman/listinfo/javalist
>


További információk a(z) Javalist levelezőlistáról