javax.xml.bind
Interface UnmarshallerHandler

All Superinterfaces:
ContentHandler

public interface UnmarshallerHandler
extends ContentHandler

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.

Since:
18-Oct-2004
Author:
Thomas.Diesler@jboss.org

Method Summary
 Object getResult()
          Obtains the unmarshalled result.
 
Methods inherited from interface org.xml.sax.ContentHandler
characters, endDocument, endElement, endPrefixMapping, ignorableWhitespace, processingInstruction, setDocumentLocator, skippedEntity, startDocument, startElement, startPrefixMapping
 

Method Detail

getResult

Object getResult()
                 throws JAXBException,
                        IllegalStateException
Obtains the unmarshalled result.

Throws:
JAXBException
IllegalStateException


Copyright © 2002 JBoss Group, LLC. All Rights Reserved.