null Values
A field of an object type can have a null value in Java. The datastore you access
may or may not support null values, and the support may vary depending
on the type of the data. Therefore, you should specify how the JDO
implementation should handle a field with a null value when it is written to a datastore
that cannot store a null value.
The field element’s null-value attribute
in the metadata specifies how this situation should be handled. This
attribute can be given one of the following values:
- "
none" Indicates that a Java
nullvalue should be stored as a null in the datastore. If the datastore cannot store a null value, aJDOUserExceptionis thrown.- "
exception" Indicates that a
JDOUserExceptionshould always be thrown when a field has anullvalue, even if the datastore can store a null value for the field.- "
default" Indicates the implementation should convert the Java
nullvalue to the datastore’s default value for the field’s datatype.
If you do not provide a value for the null-value attribute,
it defaults to "none“. If you never
want to store a field with a null
value, then you should set the null-value attribute to "exception“.
If the null-value attribute
for a field is set to "default" and
the field is null in a transaction,
the datastore’s default value is stored, based on the field’s datastore
datatype. The next transaction that accesses the instance will obtain
this datastore default value. You will have lost the fact that the field
was originally null.
For ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access