schemagen command for JAXB applications

Use the schema generator tool, schemagen, to generate an XML schema using Java™ Architecture for XML Binding (JAXB).

Use JAXB APIs and tools to establish mappings between an XML schema and Java classes. XML schemas describe the data elements and relationships in an XML document. After a data mapping or binding exists, you can convert XML documents to and from Java objects. You can now access data stored in an XML document without the need to understand the data structure.

You can generate a schema file from Java classes using the schemagen schema generator tool to create the XML schema. After the mapping between XML schema and Java classes exists, XML instance documents can be converted to and from Java objects through the use of the JAXB binding runtime API. The resulting Java classes contain all the necessary information that the JAXB run time requires to parse the XML for marshaling and unmarshaling. You can use the JAXB classes within Java API for XML Web Services (JAX-WS) applications or in your non-JAX-WS Java applications for processing XML data.

Supported configurations: The wsimport, wsgen, schemagen and xjc command-line tools are not supported on the z/OS® platform. This functionality is provided by the assembly tools provided with WebSphere® Application Server running on the z/OS platform. Read about these command-line tools for JAX-WS applications to learn more about these tools.sptcfg
Best practice: WebSphere provides Java API for XML-Based Web Services (JAX-WS) and Java Architecture for XML Binding (JAXB) tooling. The wsimport, wsgen, schemagen and xjc command-line tools are located in the app_server_root\bin\ directory. Similar tooling is provided by the Java SE Development Kit (JDK) 6. For the most part, artifacts generated by both the tooling provided with WebSphere and the JDK are the same. In general, artifacts generated by the JDK tools are portable across compliant runtime environments. However, it is a best practice to use the WebSphere tools to achieve seamless integration within the WebSphere environment. bprac
Avoid trouble: When running the schemagen tool to process JavaBeans, the schema generator will not automatically process the @XmlSchema annotations from existing package-info.class files to derive targetNamespaces. To assure that the schemagen tool processes namespace values correctly, use one of the following methods:
  • Explicitly specify the package-info.java source file in the schemagen invocation; for example:
    schemagen sample.Address sample\package-info.java
  • Use the @XmlType annotation namespace attribute within your JavaBeans to specify a namespace; for example:
    @XmlType(namespace="http://myNameSpace")
    public class Address {...}
gotcha

Syntax

The command line syntax is:

app_server_root/bin/schemagen [options] <java_files>

Parameters

The following parameters are optional for the schemagen command:

-classpath <path>
Specifies the location of the Java source or class files.
-cp <path>
Specifies the location of the Java source or class files.
-d <path>
Specifies where to place the processor and the generated Java class files.
-episode<file_name>
Specifies to generate an episode file for separate compilation.
-help
Displays the help menu.
-version
Prints the version information. If you specify this option, only the version information is output and typical command processing does not occur.



Related concepts
Assembly tools
Related tasks
Using JAXB for XML data binding
Related information
Web services specifications and APIs
Reference topic    

Terms of Use | Feedback

Last updated: Oct 20, 2010 11:50:58 PM CDT
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=compass&product=was-base-iseries&topic=rwbs_scjemagen
File name: rwbs_schemagen.html