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:
- JAXB1.0
- See Also:
-
Unmarshaller.getUnmarshallerHandler()
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method and Description 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. This method can be called only after this handler receives the endDocument SAX event.- Returns:
- always return a non-null valid object which was unmarshalled.
- Throws:
-
IllegalStateException
- if this method is called before this handler receives the endDocument event. -
JAXBException
- if there is any unmarshalling error. Note that the implementation is allowed to throw SAXException during the parsing when it finds an error.
-
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.