This documentation differs from the official API. Jadeite adds extra features to the API including: variable font sizes, constructions examples, placeholders for classes and methods, and auto-generated “See Also” links. Additionally it is missing some items found in standard Javadoc documentation, including: generics type information, “Deprecated” tags and comments, “See Also” links, along with other minor differences. Please send any questions or feedback to bam@cs.cmu.edu.


javax.xml.bind
class JAXB

java.lang.Object extended by javax.xml.bind.JAXB

public final class JAXB
extends Object

Class that defines convenience methods for common, simple use of JAXB.

Methods defined in this class are convenience methods that combine several basic operations in the {@link JAXBContext}, {@link Unmarshaller}, and {@link Marshaller}. They are designed to be the prefered methods for developers new to JAXB. They have the following characterstics:

  1. Generally speaking, the performance is not necessarily optimal. It is expected that people who need to write performance critical code will use the rest of the JAXB API directly.
  2. Errors that happen during the processing is wrapped into {@link DataBindingException} (which will have {@link JAXBException} as its {@link Throwable#getCause() cause}. It is expected that people who prefer the checked exception would use the rest of the JAXB API directly.

In addition, the unmarshal methods have the following characteristic:

  1. Schema validation is not performed on the input XML. The processing will try to continue even if there are errors in the XML, as much as possible. Only as the last resort, this method fails with {@link DataBindingException}.

Similarly, the marshal methods have the following characteristic:

  1. The processing will try to continue even if the Java object tree does not meet the validity requirement. Only as the last resort, this method fails with {@link DataBindingException}.

All the methods on this class require non-null arguments to all parameters. The unmarshal methods either fail with an exception or return a non-null value.


Method Summary
static void
marshal(Object jaxbObject, File xml)

          Writes a Java object tree to XML and store it to the specified location.
static void
marshal(Object jaxbObject, OutputStream xml)

          Writes a Java object tree to XML and store it to the specified location.
static void
marshal(Object jaxbObject, Result xml)

          Writes a Java object tree to XML and store it to the specified location.
static void
marshal(Object jaxbObject, String xml)

          Writes a Java object tree to XML and store it to the specified location.
static void
marshal(Object jaxbObject, URI xml)

          Writes a Java object tree to XML and store it to the specified location.
static void
marshal(Object jaxbObject, URL xml)

          Writes a Java object tree to XML and store it to the specified location.
static void
marshal(Object jaxbObject, Writer xml)

          Writes a Java object tree to XML and store it to the specified location.
static Object
unmarshal(File xml, Class type)

          Reads in a Java object tree from the given XML input.
static Object

          Reads in a Java object tree from the given XML input.
static Object
unmarshal(Reader xml, Class type)

          Reads in a Java object tree from the given XML input.
static Object
unmarshal(Source xml, Class type)

          Reads in a Java object tree from the given XML input.
static Object
unmarshal(String xml, Class type)

          Reads in a Java object tree from the given XML input.
static Object
unmarshal(URI xml, Class type)

          Reads in a Java object tree from the given XML input.
static Object
unmarshal(URL xml, Class type)

          Reads in a Java object tree from the given XML input.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

marshal

public static void marshal(Object jaxbObject,
                           File xml)
Writes a Java object tree to XML and store it to the specified location.

Parameters:
jaxbObject - The Java object to be marshalled into XML. If this object is a {@link JAXBElement}, it will provide the root tag name and the body. If this object has {@link XmlRootElement} on its class definition, that will be used as the root tag name and the given object will provide the body. Otherwise, the root tag name is {@link Introspector#decapitalize(String) infered} from {@link Class#getSimpleName() the short class name}. This parameter must not be null.
xml - XML will be written to this file. If it already exists, it will be overwritten.

marshal

public static void marshal(Object jaxbObject,
                           OutputStream xml)
Writes a Java object tree to XML and store it to the specified location.

Parameters:
jaxbObject - The Java object to be marshalled into XML. If this object is a {@link JAXBElement}, it will provide the root tag name and the body. If this object has {@link XmlRootElement} on its class definition, that will be used as the root tag name and the given object will provide the body. Otherwise, the root tag name is {@link Introspector#decapitalize(String) infered} from {@link Class#getSimpleName() the short class name}. This parameter must not be null.
xml - The XML will be sent to the given {@link OutputStream}. Upon a successful completion, the stream will be closed by this method.

marshal

public static void marshal(Object jaxbObject,
                           Result xml)
Writes a Java object tree to XML and store it to the specified location.

Parameters:
jaxbObject - The Java object to be marshalled into XML. If this object is a {@link JAXBElement}, it will provide the root tag name and the body. If this object has {@link XmlRootElement} on its class definition, that will be used as the root tag name and the given object will provide the body. Otherwise, the root tag name is {@link Introspector#decapitalize(String) infered} from {@link Class#getSimpleName() the short class name}. This parameter must not be null.
xml - The XML will be sent to the {@link Result} object.

marshal

public static void marshal(Object jaxbObject,
                           String xml)
Writes a Java object tree to XML and store it to the specified location.

Parameters:
jaxbObject - The Java object to be marshalled into XML. If this object is a {@link JAXBElement}, it will provide the root tag name and the body. If this object has {@link XmlRootElement} on its class definition, that will be used as the root tag name and the given object will provide the body. Otherwise, the root tag name is {@link Introspector#decapitalize(String) infered} from {@link Class#getSimpleName() the short class name}. This parameter must not be null.
xml - The string is first interpreted as an absolute URI. If it's not {@link URI#isAbsolute() a valid absolute URI}, then it's interpreted as a File

marshal

public static void marshal(Object jaxbObject,
                           URI xml)
Writes a Java object tree to XML and store it to the specified location.

Parameters:
jaxbObject - The Java object to be marshalled into XML. If this object is a {@link JAXBElement}, it will provide the root tag name and the body. If this object has {@link XmlRootElement} on its class definition, that will be used as the root tag name and the given object will provide the body. Otherwise, the root tag name is {@link Introspector#decapitalize(String) infered} from {@link Class#getSimpleName() the short class name}. This parameter must not be null.
xml - The URI is {@link URI#toURL() turned into URL} and then follows the handling of URL. See above.

marshal

public static void marshal(Object jaxbObject,
                           URL xml)
Writes a Java object tree to XML and store it to the specified location.

Parameters:
jaxbObject - The Java object to be marshalled into XML. If this object is a {@link JAXBElement}, it will provide the root tag name and the body. If this object has {@link XmlRootElement} on its class definition, that will be used as the root tag name and the given object will provide the body. Otherwise, the root tag name is {@link Introspector#decapitalize(String) infered} from {@link Class#getSimpleName() the short class name}. This parameter must not be null.
xml - The XML will be {@link URLConnection#getOutputStream() sent} to the resource pointed by this URL. Note that not all URLs support such operation, and exact semantics depends on the URL implementations. In case of {@link HttpURLConnection HTTP URLs}, this will perform HTTP POST.

marshal

public static void marshal(Object jaxbObject,
                           Writer xml)
Writes a Java object tree to XML and store it to the specified location.

Parameters:
jaxbObject - The Java object to be marshalled into XML. If this object is a {@link JAXBElement}, it will provide the root tag name and the body. If this object has {@link XmlRootElement} on its class definition, that will be used as the root tag name and the given object will provide the body. Otherwise, the root tag name is {@link Introspector#decapitalize(String) infered} from {@link Class#getSimpleName() the short class name}. This parameter must not be null.
xml - The XML will be sent as a character stream to the given {@link Writer}. Upon a successful completion, the stream will be closed by this method.

unmarshal

public static Object unmarshal(File xml,
                               Class type)
Reads in a Java object tree from the given XML input.

Parameters:
xml - Reads the entire file as XML.
type

unmarshal

public static Object unmarshal(InputStream xml,
                               Class type)
Reads in a Java object tree from the given XML input.

Parameters:
xml - The entire stream is read as an XML infoset. Upon a successful completion, the stream will be closed by this method.
type

unmarshal

public static Object unmarshal(Reader xml,
                               Class type)
Reads in a Java object tree from the given XML input.

Parameters:
xml - The character stream is read as an XML infoset. The encoding declaration in the XML will be ignored. Upon a successful completion, the stream will be closed by this method.
type

unmarshal

public static Object unmarshal(Source xml,
                               Class type)
Reads in a Java object tree from the given XML input.

Parameters:
xml - The XML infoset that the {@link Source} represents is read.
type

unmarshal

public static Object unmarshal(String xml,
                               Class type)
Reads in a Java object tree from the given XML input.

Parameters:
xml - The string is first interpreted as an absolute URI. If it's not {@link URI#isAbsolute() a valid absolute URI}, then it's interpreted as a File
type

unmarshal

public static Object unmarshal(URI xml,
                               Class type)
Reads in a Java object tree from the given XML input.

Parameters:
xml - The URI is {@link URI#toURL() turned into URL} and then follows the handling of URL.
type

unmarshal

public static Object unmarshal(URL xml,
                               Class type)
Reads in a Java object tree from the given XML input.

Parameters:
xml - The resource pointed by the URL is read in its entirety.
type


This documentation differs from the official API. Jadeite adds extra features to the API including: variable font sizes, constructions examples, placeholders for classes and methods, and auto-generated “See Also” links. Additionally it is missing some items found in standard Javadoc documentation, including: generics type information, “Deprecated” tags and comments, “See Also” links, along with other minor differences. Please send any questions or feedback to bam@cs.cmu.edu.
This page displays the Jadeite version of the documention, which is derived from the offical documentation that contains this copyright notice:
Copyright 2008 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.
The official Sun™ documentation can be found here at http://java.sun.com/javase/6/docs/api/.