Ne hibaztassuk az AOPt használó programozót azért mert adott AOP weaving technológia nem tud valamit. Nem hiba Servicebol magát hívni szerintem. <span></span><br><br>On Friday, October 4, 2013, István Viczián  wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Már két cégnél is voltam még nagyon régen, ahol ez felvételi kérdés volt. :)<br>
--<br>
Viczián István<br>
<br>
<br>
Tamás Magyar &lt;<a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;magyusz@gmail.com&#39;)">magyusz@gmail.com</a>&gt; írta (2013. október 4. 1:34):<br>
&gt; AopContext.currentProxy()<br>
&gt;<br>
&gt; 2013/10/4 István Székely &lt;<a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;istvan.szekely1@gmail.com&#39;)">istvan.szekely1@gmail.com</a>&gt;:<br>
&gt;&gt; Hali!<br>
&gt;&gt;<br>
&gt;&gt; Igen, ez kimaradt: &lt;aop:aspectj-autoproxy proxy-target-class=&quot;true&quot;/&gt;<br>
&gt;&gt;<br>
&gt;&gt; Tehát CGLIB-es proxy-k vannak. A többi rész is pont úgy van, ahogy mondod,<br>
&gt;&gt; a() hívja b()-t, és mindkét metódus ugyanabban az osztályban van. Először<br>
&gt;&gt; b() private volt, de aztán public-ot csináltam belőle, nehogy az legyen a<br>
&gt;&gt; baj, de úgy sem megy.<br>
&gt;&gt; [Van egy olyan forgatókönyv is, hogy b() absztrakt, és egy másik osztályban<br>
&gt;&gt; van implementálva, és akkor sem működik.]<br>
&gt;&gt;<br>
&gt;&gt; Nem emlékszel, mi volt a megoldás? A natív AspectJ-t kihagynám, ha lehet.<br>
&gt;&gt;<br>
&gt;&gt; Üdv,<br>
&gt;&gt; Stivi<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; 2013. október 4. 0:11 Ize írta, &lt;<a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;sicher@freemail.hu&#39;)">sicher@freemail.hu</a>&gt;:<br>
&gt;&gt;<br>
&gt;&gt;&gt; Hali!<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Nekem valamikor regen akkor volt ilyen problemam, ha a metodus osztalyon<br>
&gt;&gt;&gt; belulrol hivodott (hiaba volt public). Mitha osszefuggene a dolog a a<br>
&gt;&gt;&gt; proxy-based AOP-pal (tippem szerint ezt hasznalod).<br>
&gt;&gt;&gt; A public nem mindegy, mert a proxy-s csak azzal mukodik,<br>
&gt;&gt;&gt; private/protected-hez native AspectJ weaving kell.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Udv.:<br>
&gt;&gt;&gt;   Ize<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; On 2013. 10. 03. 16:24, István Székely wrote:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Sziasztok!<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Van egy annotációm, amit metódusok megjelölésére használok. Van egy Spring<br>
&gt;&gt;&gt; AOP-s aspect, ami úgy van megadva, hogy bizonyos csomagban és az<br>
&gt;&gt;&gt; alcsomagokban az annotációval megjelölt metódusokra fusson le egy @Around<br>
&gt;&gt;&gt; advice.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Tehát valami ilyesmi:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; @Aspect<br>
&gt;&gt;&gt; public class A {<br>
&gt;&gt;&gt;     @Pointcut(&quot;within(com.x.y.z..*) &amp;&amp; @annotation(com.a.b.C)&quot;)<br>
&gt;&gt;&gt;     public void p() {}<br>
&gt;&gt;&gt;     @Around(&quot;p()&quot;)<br>
&gt;&gt;&gt;     public void advice(...) { ... }<br>
&gt;&gt;&gt; }<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Adott egy osztály, amiben van két metódus, a() és b(), közvetlenül egymás<br>
&gt;&gt;&gt; alatt definiálva, és mindkettő public (bár ez talán mindegy is). Ha az<br>
&gt;&gt;&gt; annotációt a-ra teszem, akkor szépen lefut az advice, ha b-re, akkor pedig<br>
&gt;&gt;&gt; nem.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Hogyan lehetséges ez, és főleg, mi a megoldás?<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Üdv<br>
&gt;&gt;&gt; Stivi<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; _______________________________________________<br>
&gt;&gt; Javalist mailing list<br>
&gt;&gt; <a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;Javalist@lists.javaforum.hu&#39;)">Javalist@lists.javaforum.hu</a><br>
&gt;&gt; <a href="http://lists.javaforum.hu/mailman/listinfo/javalist" target="_blank">http://lists.javaforum.hu/mailman/listinfo/javalist</a><br>
&gt;&gt;<br>
&gt; _______________________________________________<br>
&gt; Javalist mailing list<br>
&gt; <a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;Javalist@lists.javaforum.hu&#39;)">Javalist@lists.javaforum.hu</a><br>
&gt; <a href="http://lists.javaforum.hu/mailman/listinfo/javalist" target="_blank">http://lists.javaforum.hu/mailman/listinfo/javalist</a><br>
_______________________________________________<br>
Javalist mailing list<br>
<a href="javascript:;" onclick="_e(event, &#39;cvml&#39;, &#39;Javalist@lists.javaforum.hu&#39;)">Javalist@lists.javaforum.hu</a><br>
<a href="http://lists.javaforum.hu/mailman/listinfo/javalist" target="_blank">http://lists.javaforum.hu/mailman/listinfo/javalist</a><br>
</blockquote><br><br>-- <br>Sent from Gmail Mobile<br>