|
DRAFT | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: REQUIRED | OPTIONAL | DETAIL: ELEMENT | ||||||||
@Retention(value=RUNTIME)
@Target(value={FIELD,METHOD})
public @interface XmlElementMaps a JavaBean property to a XML element derived from property name.
Usage
@XmlElement annotation can be used with the following program elements:
XmlElements
XmlID,
XmlIDREF,
XmlList,
XmlSchemaType,
XmlValue,
XmlAttachmentRef,
XmlMimeType,
XmlInlineBinaryData,
XmlElementWrapper,
XmlJavaTypeAdapterXmlElements then,
@XmlElement.type() must be DEFAULT.class since the
collection item type is already known. A JavaBean property, when annotated with @XmlElement annotation is mapped to a local element in the XML Schema complex type to which the containing class is mapped.
Example 1: Map a public non static non final field to local element
//Example: Code fragment
public class USPrice {
@XmlElement(name="itemprice")
public java.math.BigDecimal price;
}
<!-- Example: Local XML Schema element -->
<xs:complexType name="USPrice"/>
<xs:sequence>
<xs:element name="itemprice" type="xs:decimal" minOccurs="0"/>
</sequence>
</xs:complexType>
Example 2: Map a field to a nillable element.
//Example: Code fragment
public class USPrice {
@XmlElement(nillable=true)
public java.math.BigDecimal price;
}
<!-- Example: Local XML Schema element -->
<xs:complexType name="USPrice">
<xs:sequence>
<xs:element name="price" type="xs:decimal" nillable="true" minOccurs="0"/>
</sequence>
</xs:complexType>
Example 3: Map a field to a nillable, required element.
//Example: Code fragment
public class USPrice {
@XmlElement(nillable=true, required=true)
public java.math.BigDecimal price;
}
<!-- Example: Local XML Schema element -->
<xs:complexType name="USPrice">
<xs:sequence>
<xs:element name="price" type="xs:decimal" nillable="true" minOccurs="1"/>
</sequence>
</xs:complexType>
Example 4: Map a JavaBean property to an XML element with anonymous type.
See Example 6 in @XmlType.
| Optional Element Summary | |
|---|---|
java.lang.String |
defaultValue
Default value of this element. |
java.lang.String |
name
Name of the XML Schema element. |
java.lang.String |
namespace
XML target namespace of the XML Schema element. |
boolean |
nillable
Customize the element declaration to be nillable. |
boolean |
required
Customize the element declaration to be required. |
java.lang.Class |
type
The Java class being referenced. |
public abstract java.lang.String name
If the value is "##default", then element name is derived from the JavaBean property name.
public abstract boolean nillable
If nillable() is true, then the JavaBean property is mapped to a XML Schema nillable element declaration.
public abstract boolean required
If required() is true, then Javabean property is mapped to an XML schema element declaration with minOccurs="1". maxOccurs is "1" for a single valued property and "unbounded" for a multivalued property.
If required() is false, then the Javabean property is mapped to XML Schema element declaration with minOccurs="0". maxOccurs is "1" for a single valued property and "unbounded" for a multivalued property.
public abstract java.lang.String namespace
If the value is "##default", then the namespace is determined as follows:
XmlSchema annotation,
and its elementFormDefault
is QUALIFIED, then the namespace of
the enclosing class.
public abstract java.lang.String defaultValue
The ' ' value specified as a default of this annotation element is used as a poor-man's substitute for null to allow implementations to recognize the 'no default value' state.
public abstract java.lang.Class type
|
DRAFT | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: REQUIRED | OPTIONAL | DETAIL: ELEMENT | ||||||||
Copyright © 2009 Sun Microsystems, Inc. All Rights Reserved. Use is subject to license terms.
Generated on 24-November-2009 03:24