JavaTM 2 Platform
Standard Ed. 6

javax.xml.bind
介面 UnmarshallerHandler

所有父級介面:
ContentHandler

public interface UnmarshallerHandler
extends ContentHandler

作為 SAX ContentHandler 實作的 Unmarshaller。

應用程序可以使用此介面將其 JAXB 提供者用作 XML 管線中的一個元件。例如:

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();                          
 

此介面是可重用的:即使使用者解組某一物件時失敗,她/他仍可開始新一輪的解組。

從以下版本開始:
JAXB1.0
另請參見:
Unmarshaller.getUnmarshallerHandler()

方法摘要
 Object getResult()
          獲得解組的結果。
 
從介面 org.xml.sax.ContentHandler 繼承的方法
characters, endDocument, endElement, endPrefixMapping, ignorableWhitespace, processingInstruction, setDocumentLocator, skippedEntity, startDocument, startElement, startPrefixMapping
 

方法詳細資訊

getResult

Object getResult()
                 throws JAXBException,
                        IllegalStateException
獲得解組的結果。此方法只能在此處理程序接收 endDocument SAX 事件之後調用。

返回:
總是返回被解組的非 null 有效物件。
拋出:
IllegalStateException - 如果在此處理程序接收 endDocument 事件之前調用此方法。
JAXBException - 如果出現任何解組錯誤。注意,允許該實作在解析錯誤期間拋出 SAXException。

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only