Top Description Interfaces Classes Enums
module com.sun.xml.bind.osgi

Package com.sun.tools.xjc.api


API for programmatic invocation of XJC and schemagen.

This package provides a way to invoke XJC from within another program. The primary target of this API is the JAX-WS RI, but we hope that this API would be useful for other integration purposes as well.

Getting Started: Using XJC

To invoke XJC, a typical client would do something like this:

   SchemaCompiler sc = XJC.createSchemaCompiler();
   sc.parseSchema(new InputSource(schema1Url.toExternalForm()));
   sc.parseSchema(new InputSource(schema2Url.toExternalForm()));
   ...
   S2JModel model = sc.bind();

The bind operation causes XJC to do the bulk of the work, such as figuring out what classes to generate, what methods/fields to generate, etc. The obtained model contains useful introspective information about how the binding was performed (such as the mapping between XML types and generated Java classes)

Once the model is obtained, generate the code into the file system as follows:

  JCodeModel cm = model.generateCode( null, ... );
  cm.build(new FileCodeWriter(outputDir));

Implementation Note

This package shouldn't contain any implementation code.

Interface Summary

Modifier and TypeInterface and Description
public interface
ClassNameAllocator

Callback interface that allows the driver of the XJC API to rename JAXB-generated classes/interfaces/enums.

public interface
ErrorListener

Implemented by the driver of the compiler engine to handle errors found during the compiliation.

public interface
J2SJAXBModel

Deprecated for removal since 4.0. Use com.sun.tools.jxc.api.J2SJAXBModel instead.
JAXBModel that exposes additional information available only for the java -> schema direction.
public interface
JavaCompiler

Deprecated for removal since 4.0. Use com.sun.tools.jxc.api.JavaCompiler instead.
Java-to-Schema compiler.
public interface
JAXBModel

The in-memory representation of the JAXB binding.

public interface
Mapping

JAXB-induced mapping between a Java class and an XML element declaration.

public interface
Property

Represents a property of a wrapper-style element.

public interface
S2JJAXBModel

JAXBModel that exposes additional information available only for the schema -> java direction.

public interface
SchemaCompiler

Schema-to-Java compiler.

public interface
TypeAndAnnotation

Java type and associated JAXB annotations.

Class Summary

Modifier and TypeClass and Description
public class
Reference

Deprecated for removal since 4.0. Use com.sun.tools.jxc.api.Reference instead.
Reference to a JAXB type (from JAX-RPC.)

A reference is a Java type (represented as a TypeMirror) and a set of annotations (represented as a Element).

public class
XJC

Entry point to the programatic API to access schema compiler (XJC) and schema generator (schemagen).

Enum Summary

Modifier and TypeEnum and Description
public enum
SpecVersion

Represents the spec version constant.