Difference between revisions of "EclipseLink/UserGuide/MOXy/Runtime/Bootstrapping/Generating Schema"
< EclipseLink | UserGuide | MOXy | Runtime | Bootstrapping
m (re-added footer) |
|||
Line 39: | Line 39: | ||
</source></li> | </source></li> | ||
</ol> | </ol> | ||
+ | |||
+ | |||
+ | |||
+ | {{EclipseLink_MOXy | ||
+ | |previous=[[EclipseLink/UserGuide/MOXy/Runtime/Bootstrapping|Bootstrapping]] | ||
+ | |next= [[EclipseLink/UserGuide/MOXy/Runtime/Validating Against an XML Schema|Validating Against an XML Schema]] | ||
+ | }} |
Revision as of 08:30, 27 June 2011
EclipseLink MOXy
EclipseLink | |
Website | |
Download | |
Community | |
Mailing List • Forums • IRC • mattermost | |
Issues | |
Open • Help Wanted • Bug Day | |
Contribute | |
Browse Source |
Key API
Examples
Generating an XML Schema
To generate an XML schema from a Java object model:
- Create a class that extends javax.xml.bind.SchemaOutputResolver.
private class MySchemaOutputResolver extends SchemaOutputResolver { public Result createOutput(String uri, String suggestedFileName) throws IOException { File file = new File(suggestedFileName); StreamResult result = new StreamResult(file); result.setSystemId(file.toURI().toURL().toString()); return result; } }
- Use an instance of this class with JAXBContext to capture the generated XML Schema.
Class[] classes = new Class[4]; classes[0] = org.example.customer_example.AddressType.class; classes[1] = org.example.customer_example.ContactInfo.class; classes[2] = org.example.customer_example.CustomerType.class; classes[3] = org.example.customer_example.PhoneNumber.class; JAXBContext jaxbContext = JAXBContext.newInstance(classes); SchemaOutputResolver sor = new MySchemaOutputResolver(); jaxbContext.generateSchema(sor);