public class NullPolicy extends AbstractNullPolicy
The following instance field can be set on top of the two from AbstractNullPolicy:
Usage:
Unmarshal null direct element xsi:nil node:
Code Sample
XMLDescriptor aDescriptor = new XMLDescriptor();
aDescriptor.setJavaClass(Employee.class);
aDescriptor.setDefaultRootElement("employee");
XMLDirectMapping firstNameMapping = new XMLDirectMapping();
firstNameMapping.setAttributeName("firstname");
firstNameMapping.setXPath("first-name/text()");
AbstractNullPolicy aNullPolicy = new NullPolicy();
aDescriptor.addMapping(firstNameMapping);
aNullPolicy.setSetPerformedForAbsentNode(false); // no effect
aNullPolicy.setNullRepresentedByEmptyNodeNode(false); // default or no effect
aNullPolicy.setNullRepresentedByXsiNil(false); // default or no effect
Input XML
<employee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<firstname xsi:nil=true/>
</employee>
Output Object State
anEmployee.getFirstname() = null
anEmployee.isSet(firstname) = true
Marshal null composite object (isSet=true) as empty node: .
Code Sample
XMLDescriptor aDescriptor = new XMLDescriptor();
aDescriptor.setJavaClass(Team.class);
aDescriptor.setDefaultRootElement("team");
XMLCompositeObjectMapping aManagerMapping = new XMLCompositeObjectMapping();
aManagerMapping.setAttributeName("manager");
aManagerMapping.setXPath("manager/text()");
// do not modify the default NullPolicy or the 3 boolean flags
AbstractNullPolicy aNullPolicy = afirstNameMapping.getNullPolicy();
aDescriptor.addMapping(aManagerMapping);
aNullPolicy.setMarshalNullRepresentation(XMLNullRepresentationType.EMPTY_NODE);
Input Object State
aTeam.getManager() = null
aTeam.isSet(manager) = no effect
Output XML
<team xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<manager/>
</team>
NullCapableValueCOLON_W_SCHEMA_NIL_ATTRIBUTE, isNullRepresentedByEmptyNode, isNullRepresentedByXsiNil, isSetPerformedForAbsentNode, marshalNullRepresentation, TRUE, XSI_NIL_ATTRIBUTE| Constructor and Description |
|---|
NullPolicy()
Default Constructor
|
NullPolicy(java.lang.String anIsSetMethodName,
boolean bIsSetPerformedForAbsentNode,
boolean bIsNullRepresentedByEmptyNode,
boolean bIsNullRepresentedByXsiNil)
Specific Constructor to set the Unmarshal flags
|
NullPolicy(java.lang.String anIsSetMethodName,
boolean bIsSetPerformedForAbsentNode,
boolean bIsNullRepresentedByEmptyNode,
boolean bIsNullRepresentedByXsiNil,
XMLNullRepresentationType aMarshalNullRepresentation)
Specific Constructor to set both the Marshal enum and the Unmarshal flags
|
| Modifier and Type | Method and Description |
|---|---|
void |
setSetPerformedForAbsentNode(boolean performSet)
Set the isSetPerformedForAbsentNode flag
|
void |
xPathNode(org.eclipse.persistence.internal.oxm.XPathNode xPathNode,
org.eclipse.persistence.internal.oxm.NullCapableValue nullCapableValue)
INTERNAL: When using the SAX Platform this allows a NodeValue to be
registered to receive events from the TreeObjectBuilder.
|
compositeObjectMarshal, compositeObjectMarshal, directMarshal, directMarshal, getIsSetPerformedForAbsentNode, getMarshalNullRepresentation, isNullRepresentedByEmptyNode, isNullRepresentedByXsiNil, processNamespaceResolverForXSIPrefix, setMarshalNullRepresentation, setNullRepresentedByEmptyNode, setNullRepresentedByXsiNil, valueIsNull, valueIsNullpublic NullPolicy()
public NullPolicy(java.lang.String anIsSetMethodName,
boolean bIsSetPerformedForAbsentNode,
boolean bIsNullRepresentedByEmptyNode,
boolean bIsNullRepresentedByXsiNil)
anIsSetMethodName - bIsSetPerformedForAbsentNode - bIsNullRepresentedByEmptyNode - bIsNullRepresentedByXsiNil - public NullPolicy(java.lang.String anIsSetMethodName,
boolean bIsSetPerformedForAbsentNode,
boolean bIsNullRepresentedByEmptyNode,
boolean bIsNullRepresentedByXsiNil,
XMLNullRepresentationType aMarshalNullRepresentation)
anIsSetMethodName - bIsSetPerformedForAbsentNode - bIsNullRepresentedByEmptyNode - bIsNullRepresentedByXsiNil - aMarshalNullRepresentation - public void xPathNode(org.eclipse.persistence.internal.oxm.XPathNode xPathNode,
org.eclipse.persistence.internal.oxm.NullCapableValue nullCapableValue)
AbstractNullPolicyxPathNode in class AbstractNullPolicypublic void setSetPerformedForAbsentNode(boolean performSet)
performSet -