[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [aspectj-users] newbie needs help configuring
|
When I try the call outside the web application, I get this error...
[junit] Testcase: testAOP(com.myco.AOPTest): Caused an ERROR
[junit] com.myco.MyAspect.aspectOf()Lcom/myco/MyAspect;
[junit] java.lang.NoSuchMethodError:
com.myco.MyAspect.aspectOf()Lcom/myco/MyAspect;
That looks pretty significant - any idea what it means? Have I missed
something in implementing my Aspect or the way I'm using the
Annotations?
On 10/14/05, Andy Kriger <andy.kriger@xxxxxxxxx> wrote:
> 1. Yep, using Java 5
> 2. Haven't tried static weaving or logging outside the webapp/SOAP
> call - I'll try those and post a followup.
> 3. Here's what I see in the LTW log...
> info weaving 'com/myco/Service'
> info weaver operating in reweavable mode. Need to verify any required
> types exist.
> weaveinfo Join point 'method-execution(boolean
> com.myco.Service.isXml(java.lang.String))' in Type 'com.myco.Service'
> (Service.java:2469) advised by after advice from 'com.myco.MyAspect'
> (MyAspect.java)
> weaveinfo Join point 'method-execution(java.lang.String
> com.myco.Service.generateXML(java.lang.String))' in Type
> 'com.myco.Service' (Service.java:2474) advised by after advice from
> 'com.myco.MyAspect' (MyAspect.java)
> etc etc etc for all the methods in Service
>
> I never see it reach a point where AspectJ logs a message about a
> Service method call or " info weaving 'com/myco/MyAspect' ".
>
> Thanks for the help,
> Andy
>
> On 10/14/05, Matthew Webster <matthew_webster@xxxxxxxxxx> wrote:
> >
> > Andy,
> >
> > Hopefully these questions won't seem too silly:
> > 1. The @AspectJ syntax requires Java 5 so I assume you are using that to run
> > AXIS?
> > 2. Have you tried static weaving your application and testing it either
> > outside (JUnit) or inside AXIS that way?
> > 3. Could you post the LTW log or a least the interesting part of it?
> >
> > I have successfylly tried you testcase with my own simple Service class:
> >
> >
> > info weaving 'com/myco/Service'
> > info weaver operating in reweavable mode. Need to verify any required types
> > exist.
> > weaveinfo Join point 'method-execution(void
> > com.myco.Service.main(java.lang.String[]))' in Type 'com.myco.Service'
> > (Service.java:6) advised by after advice from 'com.myco.MyAspect'
> > (MyAspect.java)
> > Service.main()
> > info weaving 'com/myco/MyAspect'
> > info weaver operating in reweavable mode. Need to verify any required types
> > exist.
> > info processing reweavable type com.myco.MyAspect: com\myco\MyAspect.java
> > info successfully verified type com.myco.MyAspect exists. Originates from
> > com\myco\MyAspect.java
> > Aspect logXyPath was called
> >
> > Cheers
> >
> > Matthew Webster
> > AOSD Project
> > Java Technology Centre, MP146
> > IBM Hursley Park, Winchester, SO21 2JN, England
> > Telephone: +44 196 2816139 (external) 246139 (internal)
> > Email: Matthew Webster/UK/IBM @ IBMGB, matthew_webster@xxxxxxxxxx
> > http://w3.hursley.ibm.com/~websterm/
> >
> > Please respond to aspectj-users@xxxxxxxxxxx
> >
> > Sent by: aspectj-users-bounces@xxxxxxxxxxx
> >
> > To: aspectj-users@xxxxxxxxxxx
> > cc:
> > Subject: Re: [aspectj-users] newbie needs help configuring
> >
> >
> > The stack trace isn't really meaningful since the only trace I see is
> > an Axis SOAP Fault that wraps (and masks) the exception being thrown
> > from within the web application. I cannot see where the trace
> > originates only really the InvocationTargetException. There's nothing
> > in the logs that indicates what problem, if any, AspectJ is having. I
> > already have the verbose switch in the aop.xml. If there's a way to
> > turn on more logging, please let me know.
> >
> > On 10/13/05, Alexandru Popescu
> > <the.mindstorm.mailinglist@xxxxxxxxx> wrote:
> > > #: Andy Kriger changed the world a bit at a time by saying on 10/13/2005
> > 11:06 PM :#
> > > > I am trying to use load-time weaving in AspectJ 1.5M4 to log our web
> > > > service running on Axis 1.2 in Tomcat 5.8. Right now I'm trying to get
> > > > a very simple proof-of-concept working. I make calls to web service
> > > > methods expecting to see logging to stdout and instead I keep running
> > > > into InvocationTargetExceptions. I've included my config below.
> > > >
> > > > If I comment out the Advice part of MyAspect, everything works fine.
> > > > I've tried @Before as well as @After - no luck there. I do see
> > > > "weaveinfo Join point..." info in the logs, so things look like they
> > > > are being woven. Logging in my code shows everything working through
> > > > the service method being invoked and then mysteriously throwing the
> > > > InvocationTargetEception. I can only guess that it's coming from the
> > > > Advice. I've also tried applying the advice to the class invoked by
> > > > the service (in case there's some kind of reflection effect from Axis)
> > > > but I still see the same problem.
> > > >
> > > > I really want to show my boss that AOP is valid for our project but
> > > > right now I'm dead in the water. Can someone can help me figure out
> > > > what's going on?
> > > >
> > > > Thanks in advance,
> > > > Andy
> > > >
> > > > Tomcat is configured to run with the JVM opt
> > > >
> > -javaagent:/usr/local/tomcat/shared/lib/aspectjweaver.jar
> > > > and shared/lib contains the lib/*.jar files from the AspectJ distro
> > > >
> > > > Here's my aop.xml
> > > >
> > > > <aspectj>
> > > > <aspects>
> > > > <aspect name="com.myco.MyAspect"/>
> > > > </aspects>
> > > > <weaver options="-verbose -showWeaveInfo">
> > > > <include within="com.myco.*"/>
> > > > </weaver>
> > > > </aspectj>
> > > >
> > > > Here's my aspect
> > > >
> > > > package com.myco;
> > > >
> > > > @Aspect
> > > > public class MyAspect
> > > > {
> > > >
> > > > // on any call to our service
> > > > @Pointcut("execution( public * com.myco.Service.*(..) )")
> > > > void csCall() {}
> > > >
> > > > // log something
> > > > @After("csCall()")
> > > > public void logPath()
> > > > {
> > > > System.out.println("Aspect logXyPath was called");
> > > > }
> > > >
> > > > }
> > >
> > > Can you add to the aboves the stacktrace you are getting?
> > >
> > > ./alex
> > > --
> > > .w( the_mindstorm )p.
> > >
> > > _______________________________________________
> > > aspectj-users mailing list
> > > aspectj-users@xxxxxxxxxxx
> > > https://dev.eclipse.org/mailman/listinfo/aspectj-users
> > >
> > _______________________________________________
> > aspectj-users mailing list
> > aspectj-users@xxxxxxxxxxx
> > https://dev.eclipse.org/mailman/listinfo/aspectj-users
> >
> >
> >
> >
> >
> >
> >
> >
> > _______________________________________________
> > aspectj-users mailing list
> > aspectj-users@xxxxxxxxxxx
> > https://dev.eclipse.org/mailman/listinfo/aspectj-users
> >
> >
> >
>