On Dec 12, 2006, at 1:45 PM, Craig L Russell wrote:
There's nothing that I can find in the JPA specification about
preserving null vs. empty Collections and Maps. There's no good
(practical) way to implement null values for these types in
relational databases, which is the target of the specification.
The only way I know to do it is to redundantly add a column to the
table whose mapped class contains the Collection or Map field that
knows whether an empty Collection or Map should be presented to the
user as null. This was deemed by the JPA experts to be non-trivial
and non-demanded by users.
I am curious why this issue came up while trying to implement CMP 2
via JPA.
CMP2 requires that collection valued fields always be non-null (i.e.,
you always get an empty collection). I wanted to know what
guarantees JPA provided in terms of the field being not null.
Specifically, if the field is set to null when an empty collection is
loaded, I would have to compensate for that in my framework code.
Since, JPA does the intelligent thing and inserts an empty
collection, my job is easier.
-dain