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