Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [aspectj-users] AJDT Intertype bug????

Does that re-produce it for you?
 
Just as a side note, I have seen other things like with incremetnal compiles and seems as though the steps below are what trigger it to occur.  Once I see it, a Full Re-Build is in order :-(

	-----Original Message----- 
	From: Matt Chapman [mailto:mpchapman@xxxxxxxxx] 
	Sent: Fri 9/9/2005 11:27 AM 
	To: aspectj-users@xxxxxxxxxxx 
	Cc: 
	Subject: Re: [aspectj-users] AJDT Intertype bug????
	
	

	Thanks Ron, I've added these steps to the bug (92837)
	
	Regards,
	
	Matt.
	
	On 08/09/05, Ron DiFrango <rdifrango@xxxxxxxxxxxxxxxxxxx> wrote:
	> Matt,
	>
	> As you point out, these are hard to re-produce.  Maybe the steps [which is a combination of my previous two posts] that I used is as follows:
	>
	> Created the following aspect:
	>
	> package com.tascon.tim.sofia.aop;
	>
	> import com.salmonllc.jsp.JspTableRow;
	>
	> public aspect SofiaJspTableRow {
	>     pointcut generateHtml(JspTableRow row) :
	>         execution(public void JspTableRow.generateHTML(..))
	>         && target(row);
	>
	>     void around(JspTableRow row) throws java.io.IOException :
	> generateHtml(row)
	>     {
	>         System.out.println("Executing my aspect now.");
	>         proceed(row);
	>     }
	> }
	>
	> Performed an incremental compile [and deploy it to my App Server], then I modified that same aspect so that it resulted in the following;
	>
	> package com.tascon.tim.sofia.aop;
	>
	> public aspect SofiaJspTableRow {
	> private DataStoreEvaluator JspTableRow._dsEval = null;
	>
	> /**
	> * Use this method to bind this component to an expression in a
	> DataStore
	> * @param ds The DataStore to bind to.
	> * @param expression The expression to bind to.
	> * @see DataStoreEvaluator
	> */
	> public void JspTableRow.setExpression(DataStoreBuffer ds,
	> DataStoreExpression expression) throws Exception {
	> // RRD: Error on this line because it can not see _dsEval
	> this._dsEval = new DataStoreEvaluator(ds, expression);
	> // RRD: Error on this line because it can not see _dsEval
	> }
	>
	> pointcut generateHtml(JspTableRow row) :
	> execution(public void JspTableRow.generateHTML(..))
	> && target(row);
	>
	> void around(JspTableRow row) throws java.io.IOException :
	> generateHtml(row)
	> {
	>
	> // RRD: Error on this line because it can not see _dsEval
	>
	> if (row._dsEval != null)
	> {
	> System.out.println("row._dsEval is NOT NULL.");
	> }
	> else
	> {
	> System.out.println("row._dsEval is null.");
	> }
	> proceed(row);
	> }
	> }
	>
	> Then, I attempted to perform another incremental compile with a call to this new method from another class and I got an error and could not compile until I did the full re-build.
	>
	> Also, this maybe of important note, these aspects affect only classes in a binary jar that I am weaving into.
	>
	> Ron
	>
	>         -----Original Message-----
	>         From: Matt Chapman [mailto:mpchapman@xxxxxxxxx]
	>         Sent: Thu 9/8/2005 10:28 AM
	>         To: aspectj-users@xxxxxxxxxxx
	>         Cc:
	>         Subject: Re: [aspectj-users] AJDT Intertype bug????
	>
	>
	>
	>         If you have a real compiler error in the Problems view that goes away
	>         after a full build, then that's a bug with the incremental compiler.
	>         There are believed to be some problems with incremental and ITDs, such
	>         as bug 92837. Let us know if you can provide any good testcases to
	>         reproduce these sort of problems - they can be hard to track down, as
	>         they sometimes seem to require a particular sequence of edits.
	>
	>         Regards,
	>
	>         Matt.
	>
	>         On 08/09/05, Ronald R. DiFrango <difranr@xxxxxxxxxxx> wrote:
	>         >  Matt,
	>         >
	>         >  I should have thought of this earlier because I have seen it before.  I did
	>         > a clean and and a FULL RE-Build and the problem went away.  I have seen
	>         > something similar before with AJDT, but I have not always been able to
	>         > re-produce it.
	>         >
	>         >  Any thoughts on why this might happen?
	>         >
	>         >  Ron
	>         >
	>         >
	>         >  Matt Chapman wrote:
	>         >  Turning off auto building won't turn off the eager parser - for that
	>         > you need to go to Preferences -> Java -> Editor and uncheck "Report
	>         > problems as you type". The eager parser runs on the source in the
	>         > current editor, and adds error markers and red squiggles for any
	>         > problems it finds.
	>         >
	>         > It sounds like you have a more serious problem if the project fails to
	>         > build at all. What happens to it - does it just hang? You could try
	>         > first opening the AJDT Event Trace view (Show View -> Other ->
	>         > AspectJ) and seeing how far it gets.
	>         >
	>         > Regards,
	>         >
	>         > Matt.
	>         >
	>         > On 08/09/05, Ron DiFrango <rdifrango@xxxxxxxxxxxxxxxxxxx> wrote:
	>         >
	>         >
	>         >  Matt,
	>         >
	>         > The source code/aspect is all in my source code, but the class that I am
	>         > trying to put the inter-type declarions is in stored in a JAR file that is
	>         > put on the AspectJInPath. The weird part is that I have other inter-type
	>         > delcariotn [method level only though] that work just fine. It justs seems to
	>         > be a problem when I try to introduce memeber variables.
	>         >
	>         > I do not think it is the eager parser because I have automatic builds turned
	>         > off. So the app only builds when I tell it too [large build that takes 100%
	>         > of my CPU is the reason why, but that is a topic for another day]. And this
	>         > build fails to complete.
	>         >
	>         > Ron
	>         >
	>         >  -----Original Message-----
	>         >  From: Matt Chapman [mailto:mpchapman@xxxxxxxxx]
	>         >  Sent: Thu 9/8/2005 5:43 AM
	>         >  To: aspectj-users@xxxxxxxxxxx
	>         >  Cc:
	>         >  Subject: Re: [aspectj-users] AJDT Intertype bug????
	>         >
	>         >
	>         >
	>         >  Ron,
	>         >
	>         >  Is this source code all in the same file? Is it a .java or .aj file?
	>         >  Is it open in the Java or AspectJ editor? I'm assuming the error only
	>         >  appears in the editor, and not as a compile error in the problems
	>         >  view. In which case the error is coming from the Java eager parser. If
	>         >  you use the AspectJ editor, it should use the AspectJ eager parser,
	>         >  which doesn't report errors like that.
	>         >
	>         >  Regards,
	>         >
	>         >  Matt.
	>         >
	>         >  On 08/09/05, Ronald R. DiFrango <difranr@xxxxxxxxxxx> wrote:
	>         >  > Here is another one:
	>         >  >
	>         >  > > I am using:
	>         >  > >
	>         >  > > Eclipse SDK
	>         >  > >
	>         >  > > Version: 3.1.0
	>         >  > > Build id: I20050627-1435
	>         >  > >
	>         >  > > Eclipse AspectJ Development Tools
	>         >  > >
	>         >  > > Version: 1.3.0
	>         >  > > Build id: 20050907105507
	>         >  > > AspectJ version: 1.5.0 M3a
	>         >  > >
	>         >  > > I have the following aspect that for some reason does not see my
	>         >  > > intertype declation correctly see below for an example:
	>         >  >
	>         >  >
	>         >  > > package com.tascon.tim.sofia.aop;
	>         >  > >
	>         >  > > public aspect SofiaJspTableRow {
	>         >  > > private DataStoreEvaluator JspTableRow._dsEval = null;
	>         >  > >
	>         >  > > /**
	>         >  > > * Use this method to bind this component to an expression in a
	>         >  > > DataStore
	>         >  > > * @param ds The DataStore to bind to.
	>         >  > > * @param expression The expression to bind to.
	>         >  > > * @see DataStoreEvaluator
	>         >  > > */
	>         >  > > public void JspTableRow.setExpression(DataStoreBuffer ds,
	>         >  > > DataStoreExpression expression) throws Exception {
	>         >  >
	>         >  > // RRD: Error on this line because it can not see _dsEval
	>         >  >
	>         >  > > this._dsEval = new DataStoreEvaluator(ds, expression);
	>         >  >
	>         >  > // RRD: Error on this line because it can not see _dsEval
	>         >  >
	>         >  > > }
	>         >  > >
	>         >  > > pointcut generateHtml(JspTableRow row) :
	>         >  > > execution(public void JspTableRow.generateHTML(..))
	>         >  > > && target(row);
	>         >  > >
	>         >  > > void around(JspTableRow row) throws java.io.IOException :
	>         >  > > generateHtml(row)
	>         >  > > {
	>         >  >
	>         >  > // RRD: Error on this line because it can not see _dsEval
	>         >  >
	>         >  > > if (row._dsEval != null)
	>         >  > > {
	>         >  > > System.out.println("row._dsEval is NOT NULL.");
	>         >  > > }
	>         >  > > else
	>         >  > > {
	>         >  > > System.out.println("row._dsEval is null.");
	>         >  > > }
	>         >  > > proceed(row);
	>         >  > > }
	>         >  > > }
	>         >  > >
	>         >  > > Any reason why this might be the case? Please note this advice is
	>         >  > > being woven into an external JAR file, but I have other inter-types
	>         >  > > that work fine.
	>         >  > >
	>         >  > > Ron
	>         >  > > _______________________________________________
	>         >  > > 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
	>         >
	>         >
	>         >
	>         >
	>         >
	>         >  _______________________________________________
	>         > 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
	

<<winmail.dat>>


Back to the top