You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openjpa.apache.org by "Pinaki Poddar (JIRA)" <ji...@apache.org> on 2009/05/01 03:03:30 UTC
[jira] Resolved: (OPENJPA-207) failure when composite ID has
another composite ID as a field
[ https://issues.apache.org/jira/browse/OPENJPA-207?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Pinaki Poddar resolved OPENJPA-207.
-----------------------------------
Resolution: Fixed
Fix Version/s: 2.0.0
> failure when composite ID has another composite ID as a field
> --------------------------------------------------------------
>
> Key: OPENJPA-207
> URL: https://issues.apache.org/jira/browse/OPENJPA-207
> Project: OpenJPA
> Issue Type: Bug
> Affects Versions: 0.9.6
> Environment: derby
> jdk 1.5.0_07
> Reporter: Jeffrey Blattman
> Assignee: Pinaki Poddar
> Fix For: 2.0.0
>
> Attachments: book.zip
>
>
> see attached test case: entities Library, Book, and Page. there is a one-many bidirectional relationship between Library and Book, and Book and Page. a Library's ID is simply it's name. a Book's ID is it's name, plus it's owning library's ID. A Page's ID is it's number, plus it's owning Book's ID.
> this arrangement results in composite IDs for Book and Page. and moreover, Page's composite ID, PageId, contains a page number field plus a BookId. however, this arrangement results in an exception at runtime w/ the included test case ...
> ...
> Caused by: java.lang.ClassCastException: org.apache.openjpa.util.ObjectId
> at com.mycompany.book.Page.pcCopyKeyFieldsToObjectId(Page.java)
> at org.apache.openjpa.util.ApplicationIds.create(ApplicationIds.java:383)
> at org.apache.openjpa.kernel.BrokerImpl.persist(BrokerImpl.java:2349)
> note that if i remove the bookId field from PageId, the test case succeeds.
> also note that this problem is also observed against a trunk field from march 3 (0.9.7 snapshot).
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.