Skip to main content

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.

Jump to: navigation, search

Difference between revisions of "EclipseLink/DesignDocs/277920/Phase4"

Line 40: Line 40:
 
| X<br>
 
| X<br>
 
|}
 
|}
 +
 +
== Example: XmlElementWrapper ==
 +
 +
=== Java Metadata  ===
 +
 +
The following example will demonstrate how an [http://java.sun.com/javase/6/docs/api/javax/xml/bind/annotation/XmlElementWrapper.html XmlElementWrapper] annotation can be applied:
 +
 +
==== org.example.Employee.java  ====
 +
 +
<source lang="java">
 +
package org.example;
 +
 +
import javax.xml.bind.annotation.XmlElementWrapper;
 +
 +
public class Employee {
 +
    @XmlElementWrapper(name="my-digits", nillable=true, required=true)
 +
    public int[] digits;
 +
}
 +
</source>
 +
 +
=== XML Metadata  ===
 +
 +
==== xml-element-wrapper  ====
 +
 +
If this is present in the XML then it completely replaces the corresponding annotation.
 +
 +
==== org/example/eclipselink-oxm.xml  ====
 +
 +
This XML file represents metadata overrides for the "org.example.Employee" class.
 +
 +
<source lang="xml">
 +
<?xml version="1.0" encoding="US-ASCII"?>
 +
<xml-bindings xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/oxm">
 +
  <java-types>
 +
    <java-type name="org.example.Employee">
 +
        <java-attributes>
 +
            <xml-element-wrapper java-attribute="digits" name="my-digits" nillable="true" required="true"/>
 +
        </java-attributes>
 +
    </java-type>
 +
  </java-types>
 +
</xml-bindings>
 +
</source>

Revision as of 14:41, 13 October 2009

Phase 4 (page under construction)

Provide support for high level metadata.

Annotations

The following annotations will be targetted in this phase:


Annotation Package Type Field Method
XmlElementWrapper
    X X
XmlList
    X X
XmlValue
X X
XmlMixed
  X
X

Example: XmlElementWrapper

Java Metadata

The following example will demonstrate how an XmlElementWrapper annotation can be applied:

org.example.Employee.java

package org.example;
 
import javax.xml.bind.annotation.XmlElementWrapper;
 
public class Employee {
    @XmlElementWrapper(name="my-digits", nillable=true, required=true)
    public int[] digits;
}

XML Metadata

xml-element-wrapper

If this is present in the XML then it completely replaces the corresponding annotation.

org/example/eclipselink-oxm.xml

This XML file represents metadata overrides for the "org.example.Employee" class.

<?xml version="1.0" encoding="US-ASCII"?>
<xml-bindings xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/oxm">
  <java-types>
    <java-type name="org.example.Employee">
        <java-attributes>
            <xml-element-wrapper java-attribute="digits" name="my-digits" nillable="true" required="true"/>
        </java-attributes>
    </java-type>
  </java-types>
</xml-bindings>

Back to the top