Parsing XML Documents Using JAXP in SAX Mode Parsing XML Documents Using JAXP in DOM Mode

3-2 Programming XML for Oracle WebLogic Server

3.2 Parsing XML Documents

This section describes how to parse XML documents using JAXP in both DOM and SAX mode and how to parse XML documents from a servlet. You use the Administration Console XML Registry to configure the following: ■ Per-document-type parsers, which supersede the default parser for the specified document type. ■ External entity resolution, or the process that an XML parser goes through when requested to find an external file in the course of parsing an XML document For detailed information on how to use the Administration Console for these tasks, refer to Chapter 9, Administering WebLogic Server XML.

3.2.1 Parsing XML Documents Using JAXP in SAX Mode

The following code example shows how to configure a SAX parser factory to create a validating parser. The example also shows how to register the MyHandler class with the parser. The MyHandler class can override any method of the DefaultHandler class to provide custom behavior for SAX parsing events or errors. import javax.xml.parsers.SAXParser; import javax.xml.parsers.SAXParserFactory; ... MyHandler handler = new MyHandler; MyHandler extends org.xml.sax.helpers.DefaultHandler. Obtain an instance of SAXParserFactory. SAXParserFactory spf = SAXParserFactory.newInstance; Specify a validating parser. spf.setValidatingtrue; Requires loading the DTD. Obtain an instance of a SAX parser from the factory. SAXParser sp = spf.newSAXParser; Parse the documnt. sp.parsehttp:serverfile.xml, handler; ...

3.2.2 Parsing XML Documents Using JAXP in DOM Mode

The following code example shows how to parse an XML document and create an org.w3c.dom.Document tree from a DocumentBuilder object: Note: For detailed instructions on using the Streaming API for XML StAX to parse XML documents, see Chapter 4, Using the Streaming API for XML StAX. Note: If you want to use a parser other than the default parser, you must use the WebLogic Server Administration Console to specify the parser in the XML Registry; otherwise the SaxParserFactory.newInstance method returns the default parser. For instructions about configuring WebLogic Server to use a parser other than the default parser, see Section 9.2.1, Configuring a Parser or Transformer Other Than the Default. Developing XML Applications with WebLogic Server 3-3 import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import org.w3c.dom.Document; ... Obtain an instance of DocumentBuilderFactory. DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance; Specify a validating parser. dbf.setValidatingtrue; Requires loading the DTD. Obtain an instance of a DocumentBuilder from the factory. DocumentBuilder db = dbf.newDocumentBuilder; Parse the document. Document doc = db.parseinputFile; ...

3.2.3 Parsing XML Documents in a Servlet