You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openjpa.apache.org by "Fay Wang (JIRA)" <ji...@apache.org> on 2008/08/08 00:06:45 UTC

[jira] Updated: (OPENJPA-679) java.lang.ArrayIndexOutOfBoundsException may occur when a relation field is annotated as a primary key and a foreign key

     [ https://issues.apache.org/jira/browse/OPENJPA-679?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Fay Wang updated OPENJPA-679:
-----------------------------

    Attachment: openjpa_679.patch

The attached patch will force the field mapping in question to be resolved again after the primary keys of all the entities in the persistent unit are resolved. Any comments are mostly appreciated. A test case will be attached shortly.

> java.lang.ArrayIndexOutOfBoundsException may occur when a relation field is annotated as a primary key and a foreign key
> ------------------------------------------------------------------------------------------------------------------------
>
>                 Key: OPENJPA-679
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-679
>             Project: OpenJPA
>          Issue Type: Bug
>            Reporter: Fay Wang
>         Attachments: openjpa_679.patch
>
>
> <openjpa-1.2.0-SNAPSHOT-rexported nonfatal general error>
> org.apache.openjpa.persistence.PersistenceException: 0
>     at
> org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:196)
>     at
> org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:142)
>     at
> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:192)
>     at
> org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:145)
> ....
> Caused by: java.lang.ArrayIndexOutOfBoundsException: 0
>     at
> org.apache.openjpa.jdbc.sql.DBDictionary.getForeignKeyConstraintSQL(DBDictionary.java:3373)
>     at
> org.apache.openjpa.jdbc.sql.DBDictionary.getAddForeignKeySQL(DBDictionary.java:3252)
>     at
> org.apache.openjpa.jdbc.schema.SchemaTool.addForeignKey(SchemaTool.java:1066)
>     at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:604)
>     at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:344)
>     at org.apache.openjpa.jdbc.schema.SchemaTool.run(SchemaTool.java:321)
>     at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:501)
>     at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:453)
>     at
> org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:159)
>     at
> org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.newBrokerImpl(JDBCBrokerFactory.java:119)
>     at
> org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:189)

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