Re: [aspectwerkz-user] Custom annotations with jdk5
Alexandre Vasseur <[email protected]> Tue, 5 Jul 2005 13:57:54 +0200
| Newsgroups | gmane.comp.java.aspectwerkz.user |
|---|---|
| Message-ID | <[email protected]> |
Hi Neil Use the full qualified name of the annotation in the pointcut expression (I guess this one is in some package) Alex On 7/5/05, AVERY, Neil, FM <[email protected]> wrote: > Hi All, > Im trying to get a simple testcase working where I define my own aspect > which is driven by an Annotation Ive defined - however I cannot get it to > work. My component does get aspectised in the test case. > > Is there something Im doing wrong in my pointcut definition? > > The aspect: > public class WithinAspect { > > public Object execute(JoinPoint jp) throws Throwable{ > System.err.println("within got Aspect called with:" + jp); > return jp.proceed(); > } > } > > The component being Aspectised: > public class SomeComponent { > @InterceptWithinInvocation > public String doStuff(){ > return "stuff"; > } > } > > Config awerkz-aop.xml: > <aspectwerkz> > <system id="test"> > <package name="org.neo.swarm.interceptor.within"> > > <aspect class="WithinAspect" > deployment-model="perInstance"> > <pointcut name="withinInvocation" > expression="execution(@InterceptWithinInvocation * *.doStuff(..))"/> > <!-- this works <pointcut name="withinInvocation" > expression="execution(* *.doStuff(..))"/> --> > > <advice name="execute" type="around" > bind-to="withinInvocation"/> > </aspect> > </package> > </system> > </aspectwerkz> > > The annotation: > @Retention(RetentionPolicy.RUNTIME) > @Target(ElementType.METHOD) > public @interface InterceptWithinInvocation { > } > > The test: > public void testWithin() throws Exception { > SomeComponent component = new SomeComponent(); > component.doStuff(); > } > > > *********************************************************************************** > The Royal Bank of Scotland plc. Registered in Scotland No 90312. Registered Office: 36 St Andrew Square, Edinburgh EH2 2YB. > Authorised and regulated by the Financial Services Authority > > This e-mail message is confidential and for use by the > addressee only. If the message is received by anyone other > than the addressee, please return the message to the sender > by replying to it and then delete the message from your > computer. Internet e-mails are not necessarily secure. The > Royal Bank of Scotland plc does not accept responsibility for > changes made to this message after it was sent. > > Whilst all reasonable care has been taken to avoid the > transmission of viruses, it is the responsibility of the recipient to > ensure that the onward transmission, opening or use of this > message and any attachments will not adversely affect its > systems or data. No responsibility is accepted by The Royal > Bank of Scotland plc in this regard and the recipient should carry > out such virus and other checks as it considers appropriate. > Visit our websites at: > http://www.rbs.co.uk/CBFM > http://www.rbsmarkets.com > ******************************************************************************** > >