You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by "Jonathan Gallimore (JIRA)" <ji...@apache.org> on 2008/01/28 23:43:34 UTC

[jira] Commented: (OPENEJB-750) EJB 2 Entity bean with many to one relationship causes ClassFormatError

    [ https://issues.apache.org/jira/browse/OPENEJB-750?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12563326#action_12563326 ] 

Jonathan Gallimore commented on OPENEJB-750:
--------------------------------------------

This also appears to happen when deploying the EJB-JAR from the Geronimo Bank sample (from v1.2), so I guess this isn't down to an error with my sample app.

> EJB 2 Entity bean with many to one relationship causes ClassFormatError
> -----------------------------------------------------------------------
>
>                 Key: OPENEJB-750
>                 URL: https://issues.apache.org/jira/browse/OPENEJB-750
>             Project: OpenEJB
>          Issue Type: Bug
>          Components: cmp2
>    Affects Versions: (trunk/openejb3)
>            Reporter: Jonathan Gallimore
>         Attachments: ejb-1.0.jar, OpenEJB_EJB2_CMR_Fix.patch
>
>
> When deploying a CMP entity bean which has a many to one relationship, the following stack trace is produced when a class that is generated on the fly is loaded.
> This appears to be because the getter/setter for the field that links the entity to the parent is generated twice with the same signature - once as a regular CMP field, and once as a field that is participating in a CMR relationship.
> org.apache.openejb.OpenEJBException: Creating application failed: F:\Java\openejb-3.0-beta-1\apps\ejb-1.0.jar: Error building bean 'Contact'.  Exception: class java.lang.ClassFormatError: Repetitive method name/signature in class file openejb/uk/me/jrg/jee/sample/ejb/Contact: Repetitive method name/signature in class file openejb/uk/me/jrg/jee/sample/ejb/Contact
> 	at org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:558)
> 	at org.apache.openejb.assembler.classic.Assembler.buildContainerSystem(Assembler.java:299)
> 	at org.apache.openejb.assembler.classic.Assembler.build(Assembler.java:207)
> 	at org.apache.openejb.OpenEJB$Instance.<init>(OpenEJB.java:149)
> 	at org.apache.openejb.OpenEJB.init(OpenEJB.java:293)
> 	at org.apache.openejb.server.Server.init(Server.java:63)
> 	at org.apache.openejb.server.Main.initServer(Main.java:155)
> 	at org.apache.openejb.server.Main.main(Main.java:128)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> 	at java.lang.reflect.Method.invoke(Unknown Source)
> 	at org.apache.openejb.cli.MainImpl.main(MainImpl.java:151)
> 	at org.apache.openejb.cli.Bootstrap.main(Bootstrap.java:102)
> Caused by: org.apache.openejb.OpenEJBException: Error building bean 'Contact'.  Exception: class java.lang.ClassFormatError: Repetitive method name/signature in class file openejb/uk/me/jrg/jee/sample/ejb/Contact: Repetitive method name/signature in class file openejb/uk/me/jrg/jee/sample/ejb/Contact
> 	at org.apache.openejb.assembler.classic.EjbJarBuilder.build(EjbJarBuilder.java:65)
> 	at org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:431)
> 	... 13 more
> Caused by: java.lang.ClassFormatError: Repetitive method name/signature in class file openejb/uk/me/jrg/jee/sample/ejb/Contact
> 	at java.lang.ClassLoader.defineClass1(Native Method)
> 	at java.lang.ClassLoader.defineClass(Unknown Source)
> 	at java.security.SecureClassLoader.defineClass(Unknown Source)
> 	at java.net.URLClassLoader.defineClass(Unknown Source)
> 	at java.net.URLClassLoader.access$100(Unknown Source)
> 	at java.net.URLClassLoader$1.run(Unknown Source)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at java.net.URLClassLoader.findClass(Unknown Source)
> 	at java.lang.ClassLoader.loadClass(Unknown Source)
> 	at java.lang.ClassLoader.loadClass(Unknown Source)
> 	at java.lang.ClassLoader.loadClassInternal(Unknown Source)
> 	at java.lang.Class.forName0(Native Method)
> 	at java.lang.Class.forName(Unknown Source)
> 	at org.apache.openejb.assembler.classic.EnterpriseBeanBuilder.load(EnterpriseBeanBuilder.java:415)
> 	at org.apache.openejb.assembler.classic.EnterpriseBeanBuilder.loadClass(EnterpriseBeanBuilder.java:395)
> 	at org.apache.openejb.assembler.classic.EnterpriseBeanBuilder.build(EnterpriseBeanBuilder.java:267)
> 	at org.apache.openejb.assembler.classic.EjbJarBuilder.build(EjbJarBuilder.java:53)
> 	... 14 more

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