Class XMLUnmarshallerHandler

  • All Implemented Interfaces:
    ExtendedContentHandler, UnmarshallerHandler, ContentHandler, LexicalHandler

    public class XMLUnmarshallerHandler
    extends SAXDocumentBuilder
    implements UnmarshallerHandler

    Class used to unmarshal SAX events to objects.

    Create an XMLUnmarshallerHandler from an XMLUnmarshaller.
    Code Sample
    XMLContext context = new XMLContext("mySessionName");
    XMLUnmarshaller unmarshaller = context.createUnmarshaller();
    XMLUnmarshallerHandler unmarshallerHandler = unmarshaller.getUnmarshallerHandler();

    Use the UnmarshallerHandler with an XMLReader
    Code Sample
    SAXParserFactory saxParserFactory = SAXParserFactory.newInstance();
    saxParserFactory.setNamespaceAware(true);
    SAXParser saxParser = saxParserFactory.newSAXParser();
    XMLReader xmlReader = saxParser.getXMLReader();
    xmlReader.setContentHandler(xmlUnmarshallerHandler);
    FileInputStream inputStream = new FileInputStream("MyFile.xml");
    InputSource inputSource = new InputSource(inputStream);
    xmlReader.parse(inputSource);
    Object result = xmlUnmarshallerHandler.getResult();

    XML that can be unmarshalled is XML which has a root tag that corresponds to a default root element on an XMLDescriptor in the TopLink project associated with the XMLContext.

    See Also:
    XMLUnmarshaller