Skip to main content
Jump to: navigation, search


< EclipseLink‎ | Examples‎ | MOXy‎ | JAXB


In this example you will learn how to generate an XML schema from a Java model.

Using JAXBContext to Generate an XML Schema

First you must 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);
        return result;

Then 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();

Back to the top