Difference between revisions of "EclipseLink/UserGuide/MOXy/Runtime/Bootstrapping/Generating Schema"
< EclipseLink | UserGuide | MOXy | Runtime | Bootstrapping
m |
m |
||
Line 1: | Line 1: | ||
− | + | {{EclipseLink_UserGuide | |
+ | |info=y | ||
+ | |api=y | ||
+ | |apis= * [http://www.eclipse.org/eclipselink/api/2.1/index.html?org/eclipse/persistence/jaxb/JAXBContextFactory.html *.jaxb.JAXBContextFactory] | ||
+ | }} | ||
=Generating an XML Schema= | =Generating an XML Schema= | ||
Line 31: | Line 35: | ||
</source></li> | </source></li> | ||
</ol> | </ol> | ||
+ | |||
+ | |||
+ | {{EclipseLink_MOXy | ||
+ | |next= [[EclipseLink/UserGuide/MOXy/Runtime/Bootstrapping_Dynamic|Dynamic Bootstrapping]] | ||
+ | |previous= [[EclipseLink/UserGuide/MOXy/Runtime/Bootstrapping/Multiple_Projects|From Multiple Projects]] | ||
+ | |up= [[EclipseLink/UserGuide/MOXy/Runtime/Bootstrapping|Bootstrapping]] | ||
+ | |version=2.2.0 DRAFT}} |
Revision as of 15:03, 27 December 2010
EclipseLink | |
Website | |
Download | |
Community | |
Mailing List • Forums • IRC • mattermost | |
Issues | |
Open • Help Wanted • Bug Day | |
Contribute | |
Browse Source |
Key API
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 namespaceURI, 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);