Package com.sun.xml.bind.annotation
Annotation Type XmlIsSet
-
@Retention(RUNTIME) @Target({FIELD,METHOD}) public @interface XmlIsSet
Deprecated.this hasn't been implemented in the RI, and this hasn't been speced yet. I believe Joe asked for this feature. I'd like to drop this.Designates a boolean field/property as a flag to indicate whether another property is present or not.Sometimes you'd want to map a Java primitive type to an optional element/attribute. Doing this makes it impossible to represent the absence of the property, thus you always end up producing the value when you marshal to XML. For example,
XmlElement
class Foo {XmlElement
int x; } marshaller.marshal(new Foo());<foo><x>0</x></foo>
By creating a side boolean field/property that has this annotation, you can indicate the absence of the property by setting this boolean to false.
XmlElement
class Foo {XmlElement
int x;XmlIsSet
("x") boolean xIsPresent; } Foo f = new Foo(); f.x = 5; f.xIsPresent = false; marshaller.marshal(f);<foo/>
f.xIsPresent = true;<foo><x>5</x></foo>
A property/field annotated with
XmlIsSet
itself will not show up in XML. It is an error to use this annotation on the same property/field asXmlElement
,XmlAttribute
,XmlValue
, orXmlElementRef
, ...TBD.- Author:
- Kohsuke Kawaguchi
-
-
Required Element Summary
Required Elements Modifier and Type Required Element Description java.lang.String
value
Deprecated.Specifies the name of the property to attach to.
-