[jboss-user] [JBoss AOP] - Re: Wrong type of advice when using @Bind annotation
andrewwot
do-not-reply at jboss.com
Tue Jan 25 16:43:28 EST 2011
andrewwot [http://community.jboss.org/people/andrewwot] created the discussion
"Re: Wrong type of advice when using @Bind annotation"
To view the discussion, visit: http://community.jboss.org/message/583164#583164
--------------------------------------------------------------
We are experiencing the same issue with before/after lightweight advices inside container, JBoss AS 5.1.0, with both xml and annotation configuration
AOP version 2.1.6.GA_CP01
Xml Configuration
<?xml version="1.0" encoding="UTF-8"?>
<aop xmlns="urn:jboss:aop-beans:1.0">
<aspect class="com.intuit.cg.services.ds.aop.DocTypeResourceAspect"
scope="PER_VM" />
<bind
pointcut="execution(* com.intuit.cg.services.ds.docstore.service.resource.DocTypeResourceImpl->*(..))">
<before name="beforeAdvice" aspect="com.intuit.cg.services.ds.aop.DocTypeResourceAspect" />
</bind>
</aop>
Aspect class
public class DocTypeResourceAspect {
@Override
public void beforeAdvice(@JoinPoint JoinPointBean joinPointBean)
{
super.beforeAdvice(joinPointBean);
getLogger().info("beforeInvoke:" + joinPointBean);
}
}
Exception we are getting:
org.jboss.aop.advice.NoMatchingAdviceException: No matching around advice called 'beforeAdvice' could be found in com.intuit.cg.services.ds.aop.DocTypeResourceAspect for joinpoint Method[method=public javax.ws.rs.core.Response com.intuit.cg.services.ds.docstore.service.resource.DocTypeResourceImpl.getDocTypes()]
On method 'public void com.intuit.cg.services.ds.aop.DocTypeResourceAspect.beforeAdvice(org.jboss.aop.joinpoint.JoinPointBean)'
@JoinPoint-annotated parameter is not assignable from expected type class org.jboss.aop.joinpoint.MethodInvocation
at org.jboss.aop.advice.annotation.AdviceMethodFactory.findAdviceMethod(AdviceMethodFactory.java:295)
at org.jboss.aop.instrument.JoinPointGenerator$AdviceSetups.<init>(JoinPointGenerator.java:1612)
at org.jboss.aop.instrument.JoinPointGenerator.initialiseAdviceInfosAndAddFields(JoinPointGenerator.java:537)
at org.jboss.aop.instrument.JoinPointGenerator.generateJoinpointClass(JoinPointGenerator.java:367)
at org.jboss.aop.instrument.JoinPointGenerator.doGenerateJoinPointClass(JoinPointGenerator.java:285)
at org.jboss.aop.instrument.JoinPointGenerator.access$300(JoinPointGenerator.java:77)
at org.jboss.aop.instrument.JoinPointGenerator$GenerateJoinPointClassAction$2.generateJoinPointClass(JoinPointGenerator.java:1730)
at org.jboss.aop.instrument.JoinPointGenerator.generateJoinPointClass(JoinPointGenerator.java:250)
at org.jboss.aop.GeneratedClassAdvisor.generateJoinPointClass(GeneratedClassAdvisor.java:1047)
at com.intuit.cg.services.ds.docstore.service.resource.DocTypeResourceImpl$DocTypeResourceImplAdvisor.getDocTypes_N_5161450178620338716(DocTypeResourceImpl$DocTypeResourceImplAdvisor.java)
Classical around advices and interceptor work just fine, we even tried to modify aop.xml to explicitly use
<property name="instrumentor">org.jboss.aop.instrument.GeneratedAdvisorInstrumentor</property>
even that it's supposed to be default instrumentor, but it didn't help.
What version of container supports lightweight advices?
--------------------------------------------------------------
Reply to this message by going to Community
[http://community.jboss.org/message/583164#583164]
Start a new discussion in JBoss AOP at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2027]
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-user/attachments/20110125/6fb7bcab/attachment.html
More information about the jboss-user
mailing list