Thanks. Actually, I want to use it to implement various mission critical orthogonal crosscuts to dramatically improve project velocity for a deadline in early April. Do you have experience using AJ for mission critical functionality? I spent 30+ hours on this problem in the 4 days so I will be able to devote time to fixing problems as long as I can observe the effects of my AJ changes. How likely is it that I¹ll run into any more circumstances where my pointcuts filter far too many joinpoints such as my example below (118 when >3000 should have been found)? Debugging problems of the nature ³the ubiquitous framework chooses not to call my code² are extreme timewasters.
Kevin From: Dean Wampler <[EMAIL PROTECTED]> Organization: Aspect Programming Reply-To: <[email protected]> Date: Sun, 25 Feb 2007 10:51:52 -0600 To: <[email protected]> Subject: Re: [aspectj-users] Frustrated Newbie I'm glad you made some headway. I'm not sure if your original installation process caused problems. I think it should have worked, but I've only used the feature installer myself. I do believe it's wise to proceed cautiously, since as you've seen, it can take some effort to understand the join point language and other aspects (pardon the pun ;) of AspectJ. I don't know what other aspects you've tried to use, but "policy enforcement" aspects like the one you posted are a good place to start, since they don't implement production functionality, but provide a supporting development role. As you build confidence, you can proceed to more "missing critical" aspects. Best wishes. dean Kevin F wrote: > Re: [aspectj-users] Frustrated Newbie Paulo & Dean, thank you for your > replies. I had given up and was actually in the process of purging AspectJ > from my project when they arrived. So, I copied my AspectJ-free project to a > new directory and used the Eclipse option to convert to AJ project. I didn¹t > think your suggestions were going to help since the failure I had been getting > were on the expression ³within(com.mycompany..*+)²; however, I tried anyway. > > Amazingly, things seemed to behave exactly as they should. With this happy > event, I tried the tests from my original posting. At the time of posting, > the pointcut ³within(com.mycompany..*+)² allowed 118 join points. Now, it > allows > 3000 which is approximately what I expected. > > When I thought back on my installation within Eclipse 3.2.1, I downloaded AJDT > from eclipse.org, extracted the file, copied the features to > .../eclipse_3.2.1/features/, and copied the plugins to > .../eclipse_3.2.1/plugins. When I installed AJDT for Eclipse 3.3M5, I used > the feature installer. Is it possible that an improper installation the first > time caused my AJ project to be setup incorrectly and caused all my problems? > > Due to my 4 days of pain, I am a bit timid at the moment; however, I want to > believe that AJ is stable and reliable because > > 1. it is used in a lot of projects > 2. it has the awesome power (for good or bad) to make massive changes to the > code that I write > 3. > > Thanks again for the responses, > Kevin > > > > From: Kevin F <[EMAIL PROTECTED]> <mailto:[EMAIL PROTECTED]> > Reply-To: <[email protected]> <mailto:[email protected]> > Date: Sun, 25 Feb 2007 08:07:22 -0500 > To: <[email protected]> <mailto:[email protected]> > Conversation: Frustrated Newbie > Subject: [aspectj-users] Frustrated Newbie > > I¹ve been at this for 4 days now. I had some good luck with a few initial > cases where I was able to clean up some code and verify through testing it > worked like a charm. I made a couple minor tweaks to those which broke them > giving the technology an unreliable feel. I¹m willing to write that off as > inexperience. > > So I continued on and tried to implement some simple enforcement policies that > I read in the book from the Eclipse Series (trying to support development by > buying products and all). It isn¹t working at all and my frustration level > trying to implement even simple enforcement policies is off the scale. > > Yesterday, I posted the following to the AspectJ newsgroup without a response > yet. I continued researching on my own, even using the latest milestone > AspectJ release for Eclipse 3.3M5. Still no luck. > > --------------- > Newsgroup post: > --------------- > > I'm new to AspectJ so please no flames. I'm using AJDT for Eclipse 3.2.1 > and have been following the details from the "eclipse AspectJ" book. > > I'm trying to enforce simple errors such as "It is an error to implement any > listener interface unless you also implement interface Foo." To do this, I > want to try: > > pointcut listeners() : within(*..*Listener*+); > pointcut myCode() : within(com.mycompany..*+); > pointcut mySpecialInterface() : within(com.mycompany.Foo+); > declare error: listeners() && myCode() && !mySpecialInterface() > : "All listeners must implement Foo"; > > > Since this did not work, I tried various experiments. So, I tried the > following: > > declare error: within(*..*Listener*+) > : "A"; > declare error: within(com.mycompany..*+) > : "B"; > declare error: within(*..*Listener*+) && within(com.mycompany..*+) > : "A intersect B"; > declare error: within(*..*Listener*+ && com.mycompany..*+) > : "A intersect' B"; > declare error: within(*..*Listener*+) || within(com.mycompany..*+) > : "A union B"; > declare error: within(*..*Listener*+ || com.mycompany..*+) > : "A union' B"; > > A seems to be tagged correctly on all classes that implement any interface > with the word Listener in its name. > > B seems to tag only a fraction of the classes I have written. > > A intersect B and A intersect' B both result in no tags. > > A union B and A union' B both seem to result in the union of what A and B > tagged above. > > > AOP seems so powerful yet so cryptic. Can anybody help? > > > > > _______________________________________________ > aspectj-users mailing list > [email protected] > https://dev.eclipse.org/mailman/listinfo/aspectj-users > > > > > _______________________________________________ > aspectj-users mailing list > [email protected] > https://dev.eclipse.org/mailman/listinfo/aspectj-users > -- Dean Wampler's Signature Dean Wampler, Ph.D. dean at aspectprogramming.com objectmentor.com <http://www.objectmentor.com> aspectprogramming.com <http://www.aspectprogramming.com> contract4j.org <http://www.contract4j.org> I want my tombstone to say: Unknown Application Error in Dean Wampler.exe. Application Terminated. Okay Cancel _______________________________________________ aspectj-users mailing list [email protected] https://dev.eclipse.org/mailman/listinfo/aspectj-users
_______________________________________________ aspectj-users mailing list [email protected] https://dev.eclipse.org/mailman/listinfo/aspectj-users
