java unmarshalling - valeur NULL ou d'une balise manquante?

J'ai un nillable champ dans une classe est définie par le unmarshaller:

@XmlElement(name = "value", nillable = true)
private BigDecimal valueVariable;

Mon problème est que je ne peux pas dire si l'élément xml a été omis ou la valeur nulle:

A. élément <value/> est manquant dans le fichier XML, il n'est pas nécessaire.

=> (valueVariable == null) est vrai

B. fichier XML contient <value xsi:nil="true"/>

=> (valueVariable == null) est vrai

Comment puis-je dire pour une variable de Chaîne non si la valeur est xsi:nil ou l'étiquette est manquante?

Mise à JOUR
Vous pouvez voir 2 bonnes solutions, j'ai préféré l'un d'entre eux, mais l'autre serait aussi bien!

OriginalL'auteur user1414745 | 2013-08-26