Vermeulen created OPENJPA-2540:
----------------------------------
Summary: merge without DetachedStateField deletes lazy fields in
embedded entities
Key: OPENJPA-2540
URL: https://issues.apache.org/jira/browse/OPENJPA-2540
Project: OpenJPA
Issue Type: Bug
Components: kernel
Affects Versions: 2.3.0
Reporter: Vermeulen
I am using the setting <property name="openjpa.DetachState"
value="fetch-groups(DetachedStateField=false)" />
Like the summary says, I have an embedded entity with a field that is lazily
fetched. This is a field that is persisted whenever the entity is persisted.
(It doesn't matter whether it is a @Basic field or a @ManyToOne relation with
cascade = CascadeType.ALL). When I merge a detached entity that has null for
such a field, the field is actually made null in the database. The expected
behavior is for OpenJPA to notice that the field is null because it was not
fetched and ignore it on merge.
The problem only exists when using an embedded entity together with the
DetachedStateField=false setting.
I created a test case which shows the issue. It is based on that of
OPENJPA-1983 which reported a similar issue but whose test case didn't use an
embedded entity.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)