[ 
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.

Reply via email to