Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "EclipseLink/DesignDocs/277920/Phase2"
< EclipseLink | DesignDocs | 277920
(→Java Metadata) |
(→Java Metadata) |
||
Line 35: | Line 35: | ||
import javax.xml.bind.annotation.XmlAccessType; | import javax.xml.bind.annotation.XmlAccessType; | ||
import javax.xml.bind.annotation.XmlAccessorType; | import javax.xml.bind.annotation.XmlAccessorType; | ||
+ | </source> | ||
+ | |||
+ | === org.example.customer.Customer === | ||
+ | |||
+ | <source lang="java"> | ||
+ | package org.example.customer; | ||
+ | |||
+ | @XmlAccessorOrder(XmlAccessOrder.UNDEFINED) | ||
+ | @XmlAccessorType(XmlAccessType.FIELD) | ||
+ | @XmlType( | ||
+ | factoryClass=CustomerFactory.class, | ||
+ | factoryMethod="createCustomer", | ||
+ | name="customer-type", | ||
+ | namespace="urn:customer", | ||
+ | propOrder={}) | ||
+ | public class Customer extends Person { | ||
+ | |||
+ | private int customerId; | ||
+ | |||
+ | public int getCustomerId() { | ||
+ | return customerId; | ||
+ | } | ||
+ | |||
+ | public void setCustomerId(int customerId) { | ||
+ | this.customerId = customerId; | ||
+ | } | ||
+ | |||
+ | } | ||
</source> | </source> | ||
Revision as of 10:03, 6 July 2009
Contents
Phase 2
Provide support for high level metadata.
Annotations
The following annotations will be targetted in this phase:
Annotation | Package | Type | Field | Method |
---|---|---|---|---|
XmlAccessorOrder | X | X | ||
XmlAccessorType | X | X | ||
XmlRootElement | X | |||
XmlType | X |
Java Metadata
The following example will demonstrate how these annotations can be applied to Java classes:
org.example.customer.package-info.java
@XmlAccessorOrder(XmlAccessOrder.ALPHABETICAL) @XmlAccessorType(XmlAccessType.PROPERTY) package org.example.customer; import javax.xml.bind.annotation.XmlAccessOrder; import javax.xml.bind.annotation.XmlAccessorOrder; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType;
org.example.customer.Customer
package org.example.customer; @XmlAccessorOrder(XmlAccessOrder.UNDEFINED) @XmlAccessorType(XmlAccessType.FIELD) @XmlType( factoryClass=CustomerFactory.class, factoryMethod="createCustomer", name="customer-type", namespace="urn:customer", propOrder={}) public class Customer extends Person { private int customerId; public int getCustomerId() { return customerId; } public void setCustomerId(int customerId) { this.customerId = customerId; } }
XML Metadata
xml-accessor-order
If this is present in the XML then it completely replaces the corresponding annotation.
xml-accessor-type
If this is present in the XML then it completely replaces the corresponding annotation.
xml-root-element
If this is present in the XML then it completely replaces the corresponding annotation.
xml-type
If this is present in the XML then it completely replaces the corresponding annotation.