Difference between revisions of "EclipseLink/Examples/MOXy/GettingStarted/ExternalizedMetadata"

From Eclipsepedia

Jump to: navigation, search
(Overview)
(Overview)
Line 1: Line 1:
 
==Overview==
 
==Overview==
 +
This example will build upon the lessons learned in the previous example ([[EclipseLink/Examples/MOXy/GettingStarted/MOXyExtensions|MOXy Extensions]]), and demonstrate how the annotations can be expressed as XML.  This technique is useful in situations where you are not able to modify the domain objects.
 +
 +
==Externalized Metadata==
 +
The XML metadata below is equivalent to the metadata represented by the annotations used in the [[EclipseLink/Examples/MOXy/GettingStarted/MOXyExtensions|previous example]].
 
<source lang="xml">
 
<source lang="xml">
 
<?xml version="1.0"?>
 
<?xml version="1.0"?>

Revision as of 14:43, 16 June 2010

Overview

This example will build upon the lessons learned in the previous example (MOXy Extensions), and demonstrate how the annotations can be expressed as XML. This technique is useful in situations where you are not able to modify the domain objects.

Externalized Metadata

The XML metadata below is equivalent to the metadata represented by the annotations used in the previous example.

<?xml version="1.0"?>
<xml-bindings 
        xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/oxm"
        version="2.1">
    <java-types>
        <java-type name="example.gettingstarted.Customer">
            <xml-root-element/>
            <xml-type prop-order="name address phoneNumbers"/>
            <java-attributes>
                <xml-element java-attribute="name" xml-path="personal-info/name/text()"/>
                <xml-element java-attribute="address" xml-path="contact-info/address"/>
                <xml-element java-attribute="phoneNumbers" xml-path="contact-info/phone-numbers"/>
            </java-attributes>
        </java-type>
        <java-type name="example.gettingstarted.PhoneNumber">
            <xml-root-element/>
            <java-attributes>
                <xml-attribute java-attribute="type"/>
                <xml-value java-attribute="number"/>
            </java-attributes>
        </java-type>
    </java-types>
</xml-bindings>