Bug 36056 - Ajc 1.1 rc1 java.lang.VerifyError
Summary: Ajc 1.1 rc1 java.lang.VerifyError
Status: RESOLVED FIXED
Alias: None
Product: AspectJ
Classification: Tools
Component: Compiler (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows 98
: P1 critical (vote)
Target Milestone: ---   Edit
Assignee: Jim Hugunin CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-04-04 02:32 EST by Rich Price CLA
Modified: 2003-04-22 18:33 EDT (History)
0 users

See Also:


Attachments
Generic trace aspect. (16.24 KB, text/plain)
2003-04-04 02:36 EST, Rich Price CLA
no flags Details
Concrete trace aspect (899 bytes, text/plain)
2003-04-04 14:23 EST, Rich Price CLA
no flags Details
Code to trace (5.94 KB, text/plain)
2003-04-04 14:25 EST, Rich Price CLA
no flags Details
class file with trace aspect weaving (2.22 KB, application/java)
2003-04-10 23:13 EDT, Rich Price CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Rich Price CLA 2003-04-04 02:32:34 EST
Running in JRun servlet engine.  

javax.servlet.ServletException: (class: 
com/checkfree/cc/cap/SeamlessUserInfo_RH, method: process_aroundBody20 
signature: 
(Lcom/checkfree/cc/cap/SeamlessUserInfo_RH;Ljavax/servlet/http/HttpServletReques
t;Ljavax/servlet/http/HttpServletResponse;Lorg/aspectj/lang/JoinPoint;)V) 
Incompatible۟l
java.lang.VerifyError: (class: com/checkfree/cc/cap/SeamlessUserInfo_RH, 
method: process_aroundBody20 signature: 
(Lcom/checkfree/cc/cap/SeamlessUserInfo_RH;Ljavax/servlet/http/HttpServletReques
t;Ljavax/servlet/http/HttpServletResponse;Lorg/aspectj/lang/JoinPoint;)V) 
Incompatible۟l
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:115)
	at com.checkfree.common.util.ReqHandlerFactory.init
(ReqHandlerFactory.java:81)
	at com.checkfree.cc.cap.csrpay.init(csrpay.java:34)
	at allaire.jrun.servlet.JRunServletLoader.loadServletInstance
(JRunServletLoader.java:236)
	at allaire.jrun.servlet.JRunServletLoader.loadServletInstance
(JRunServletLoader.java:190)
	at allaire.jrun.servlet.JRunServletLoader.loadServlet
(JRunServletLoader.java:177)
	at allaire.jrun.servlet.JRunSE.getServletReference(JRunSE.java:1261)
	at allaire.jrun.servlet.JRunSE.runServlet(JRunSE.java:895)
	at allaire.jrun.servlet.JRunRequestDispatcher.forward
(JRunRequestDispatcher.java:88)
	at allaire.jrun.servlet.JRunSE.service(JRunSE.java:1131)
	at allaire.jrun.servlet.JvmContext.dispatch(JvmContext.java:330)
	at allaire.jrun.http.WebEndpoint.run(WebEndpoint.java:107)
	at allaire.jrun.ThreadPool.run(ThreadPool.java:272)
	at allaire.jrun.WorkerThread.run(WorkerThread.java:75)
Comment 1 Rich Price CLA 2003-04-04 02:36:34 EST
Created attachment 4455 [details]
Generic trace aspect. 

This is the concrete trace aspect:

import com.checkfree.aspects.*;
import org.apache.log4j.*;
import com.checkfree.common.util.*;
/**
* This concrete trace aspect specifies what we should trace.
 */

privileged aspect DebugTrace extends Trace
				 
{
    declare precedence: DebugTrace, *;
    
    private static Logger _log = null;
    
    static
    {
	String log4jPath =
GlobalPaths.getPath("properties_dir")+"log4j.properties";
	PropertyConfigurator.configure(log4jPath);
	_log = Logger.getLogger(TestLog.class);    
    }
	
    /** define the pointcut for what we trace */
    protected pointcut lexicalScope()
:within(com.checkfree.common.util.RequestHandler+);
	
    protected void log(String data)
    {
	_log.debug(data);	 
    }  
    
}
Comment 2 Rich Price CLA 2003-04-04 14:23:29 EST
Created attachment 4464 [details]
Concrete trace aspect
Comment 3 Rich Price CLA 2003-04-04 14:25:03 EST
Created attachment 4465 [details]
Code to trace

This is the code being traced by the concrete aspect.  If you run the main()
method, you get the verify error exception.
Comment 4 Jim Hugunin CLA 2003-04-10 14:17:56 EDT
Changing priority to make sure this gets fixed.
Comment 5 Jim Hugunin CLA 2003-04-10 17:45:42 EDT
The text of this error message should be helpful, does it really say:

Incompatible۟l

Or are those garbage characters at the end a result of copying/pasting?  It 
would help to isolate this bug if we could see better text for the error 
message.

Also, could you send me either the .class or a decompiled source listing for
class: com/checkfree/cc/cap/SeamlessUserInfo_RH?  This would also help in 
isolating the bug.
Comment 6 Rich Price CLA 2003-04-10 23:12:22 EDT
Incompatible۟l is the actual error message text, nothing follows the bogus 
characters.

I'm attaching the requested .class file. Anything else you need, let me know.
Comment 7 Rich Price CLA 2003-04-10 23:13:44 EDT
Created attachment 4553 [details]
class file with trace aspect weaving
Comment 8 Jim Hugunin CLA 2003-04-22 14:06:12 EDT
This bug has now been reproduced from the provided files.  I had to remove the
dependencies on log4j to make it a self-contained test, but after that it 
compiled cleanly and reproduces the reported error.
Comment 9 Jim Hugunin CLA 2003-04-22 18:33:14 EDT
The minimal test-case form of this bug as provided by the attached files has 
been fixed in the current tree and a test added in bugs/messyAround.  This was 
solved by the same fix as for bug 29665.

When the preview release for 1.1rc2 comes out, please verify that this fix 
indeed works in the larger system.