[jboss-user] [Javassist] New message: "Re: javassist.bytecode.BadBytecode: unset variable. Please Help Me!"

Arvind K do-not-reply at jboss.com
Thu Feb 25 08:33:19 EST 2010


User development,

A new message was posted in the thread "javassist.bytecode.BadBytecode: unset variable. Please Help Me!":

http://community.jboss.org/message/528474#528474

Author  : Arvind K
Profile : http://community.jboss.org/people/megalodon

Message:
--------------------------------------------------------------
I did a little work with respect to (largely incomplete) exception tracing in Javassist source since I think it gets lost in the insertBefore implementation where the exception is caught and rethrown as a different one. Of course, this is how "I think" the exception is being thrown. We know that the 'unset variable' exception is being thrown from javassist.bytecode.stackmap.TypeData.setType(TypeData.java:44). I have tried to trace its invocation from the insertBefore implementation. I do not understand javassist implementation and it gets a little hairier for me when I get down to javassist.bytecode.stackmap package. Anyway, here goes:
 
javassist.bytecode.stackmap.TypeData.setType(TypeData.java:44) -> throw new BadBytecode("unset variable");
..
..
..
javassist.bytecode.stackmap.MapMaker.make(MapMaker.java:84) -> public static StackMapTable make(ClassPool classes, MethodInfo minfo)
javassist.bytecode.MethodInfo.rebuildStackMap(MethodInfo.java:404) -> StackMapTable smt = MapMaker.make(pool, this);
javassist.CtBehavior.insertBefore(CtBehavior.java:715) -> methodInfo.rebuildStackMapIf6(cc.getClassPool(), cc.getClassFile2());
javassist.CtBehavior.insertBefore(CtBehavior.java:724)


I will see if I can do a better job later but if this one helps save a little time/offers some insight, thats great. Please help. Thanks

--------------------------------------------------------------

To reply to this message visit the message page: http://community.jboss.org/message/528474#528474




More information about the jboss-user mailing list