Unmarshaller implemented as SAX ContentHandler.
Applications can use this interface to use their JAXB provider as a component
in an XML pipeline. For example:
JAXBContext context = JAXBContext.newInstance( "org.acme.foo" );
Unmarshaller unmarshaller = context.createUnmarshaller();
UnmarshallerHandler unmarshallerHandler = unmarshaller.getUnmarshallerHandler();
SAXParserFactory spf = SAXParserFactory.newInstance();
spf.setNamespaceAware( true );
XMLReader xmlReader = spf.newSAXParser().getXMLReader();
xmlReader.setContentHandler( unmarshallerHandler );
xmlReader.parse(new InputSource( new FileInputStream( XML_FILE ) ) );
MyObject myObject= (MyObject)unmarshallerHandler.getResult();
This interface is reusable: even if the user fails to unmarshal
an object, s/he can still start a new round of unmarshalling.
author: - Kohsuke KAWAGUCHI, Sun Microsystems, Inc.
version: $Revision: 1.2 $ $Date: 2006/03/08 16:55:17 $ See Also: Unmarshaller.getUnmarshallerHandler since: JAXB1.0 |