openjpa-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF subversion and git services (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (OPENJPA-2443) InvalidStateException while merging a new Entity with a GeneratedValue id
Date Wed, 23 Oct 2013 15:59:41 GMT

    [ https://issues.apache.org/jira/browse/OPENJPA-2443?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13802973#comment-13802973
] 

ASF subversion and git services commented on OPENJPA-2443:
----------------------------------------------------------

Commit 1535067 from [~curtisr7] in branch 'openjpa/trunk'
[ https://svn.apache.org/r1535067 ]

OPENJPA-2443 : Fix SingleFieldManager to not check for null values for IDENTITY generated
fields when flushing.

> InvalidStateException while merging a new Entity with a GeneratedValue id
> -------------------------------------------------------------------------
>
>                 Key: OPENJPA-2443
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-2443
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: kernel
>    Affects Versions: 2.3.0, 2.4.0
>            Reporter: Rick Curtis
>            Assignee: Rick Curtis
>         Attachments: OPENJPA-2443.patch
>
>
> This problem only happens if you have an Entity with a Generated id that also has the
annotation @Basic(optional = false). If you create a new Entity and then try to persist it
via EntityManager.merge(...) call, you'll get the following stack :
> <openjpa-0.0.0-rnull fatal user error> org.apache.openjpa.persistence.InvalidStateException:
The field "id" of instance "org.apache.openjpa.persistence.jdbc.auto.AutoIncrementEntity@99883308"
contained a null value; the metadata for this field specifies that nulls are illegal.
> 	at org.apache.openjpa.kernel.SingleFieldManager.preFlush(SingleFieldManager.java:567)
> 	at org.apache.openjpa.kernel.SingleFieldManager.preFlush(SingleFieldManager.java:511)
> 	at org.apache.openjpa.kernel.StateManagerImpl.preFlush(StateManagerImpl.java:3019)
> 	at org.apache.openjpa.kernel.PNewState.beforeFlush(PNewState.java:44)
> 	at org.apache.openjpa.kernel.StateManagerImpl.beforeFlush(StateManagerImpl.java:1035)
> 	at org.apache.openjpa.kernel.BrokerImpl.flush(BrokerImpl.java:2141)
> 	at org.apache.openjpa.kernel.BrokerImpl.flushSafe(BrokerImpl.java:2101)
> 	at org.apache.openjpa.kernel.BrokerImpl.flush(BrokerImpl.java:1872)
> 	at org.apache.openjpa.kernel.DelegatingBroker.flush(DelegatingBroker.java:1045)
> 	at org.apache.openjpa.persistence.EntityManagerImpl.flush(EntityManagerImpl.java:663)



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Mime
View raw message