「Java/XML」の編集履歴(バックアップ)一覧に戻る
Java/XML - (2006/05/11 (木) 15:47:37) のソース
**XMLプロセッサ実装の切替え 以下のシステムプロパティに対して使用したい実装のFactoryクラスを指定する。 javax.xml.parsers.SAXParserFactory javax.xml.parsers.DocumentBuilderFactory javax.xml.transform.TransformerFactory 例 : WeblogicのDOMパーサを指定する場合 System.setProperty( "javax.xml.parsers.DocumentBuilderFactory", "weblogic.xml.jaxp.RegistryDocumentBuilderFactory"); **XMLSchemaによるXML検証 DOMの場合です。 DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); factory.setValidating(true); factory.setNamespaceAware(true); TestErrorHandler handler = new TestErrorHandler(); DocumentBuilder builder = factory.newDocumentBuilder(); builder.setErrorHandler(handler); builder.parse("sample.xml"); TestErrorHandlerは各メソッドで標準出力を出すなりしましょう。 一番最初namespaceなしのXMLで検証ができなくて悩んでいましたが、その理由は以下のフラグをfalseにしていたせいでした。 factory.setNamespaceAware(true); 自分が作成したXMLはnamespace使ってないからと思ってましたが、よく考えたらXMLスキーマの指定の部分とかで使ってるんですよね。