You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openjpa.apache.org by "Simone Gianni (JIRA)" <ji...@apache.org> on 2009/02/02 01:01:59 UTC

[jira] Created: (OPENJPA-888) Empty method in an entity causes errors while enhancing

Empty method in an entity causes errors while enhancing
-------------------------------------------------------

                 Key: OPENJPA-888
                 URL: https://issues.apache.org/jira/browse/OPENJPA-888
             Project: OpenJPA
          Issue Type: Bug
          Components: kernel
    Affects Versions: 1.2.0
            Reporter: Simone Gianni


I have a class subclassing another class. Both are entities. They have a method, which has nothing to do with JPA cause it's not a getter o a setter. The subclass overrides this method with an empty implementation, that is @Override public void theMethod() {} .

As a result, OpenJPA throws an error while enhancing the subclass, more specifically the stacktrace is relative at SERP internals :

java.lang.ClassCastException: serp.bytecode.CodeEntry cannot be cast to serp.bytecode.Instruction
        at serp.bytecode.Local.getEnd(Local.java:114)
        at serp.bytecode.Local.updateTargets(Local.java:155)
        at serp.bytecode.LocalTable.updateTargets(LocalTable.java:163)
        at serp.bytecode.Code.read(Code.java:2031)
        at serp.bytecode.Attributes.readAttributes(Attributes.java:152)
        at serp.bytecode.BCMember.read(BCMember.java:365)
        at serp.bytecode.BCClass.read(BCClass.java:123)
        at serp.bytecode.Project.loadClass(Project.java:211)


Looking the Serp code and debugging it, I can confirm it is a SERP error, and opened a bug on its tracker (https://sourceforge.net/tracker2/?func=detail&aid=2556092&group_id=31479&atid=402282 ).

I'm opening this bug here to track the problem, and eventually use an updated version of SERP if/when they solve the problem.

The most obvious workaround (which works) is to write something inside an empty method, a plain "int i = 0" will do the job.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.