0

XML 文字列から org.w3c.dom.Document を作成しようとしています。私はこのHow to convert string to xml file in Javaを基礎として使用しています。例外は発生しません。問題は、ドキュメントが常に null であることです。XML はシステムで生成され、整形式です。新しいノードなどを追加できるように、これを Document オブジェクトに変換したいと考えています。

public static org.w3c.dom.Document stringToXML(String xmlSource) throws Exception {

DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();

InputStream input = IOUtils.toInputStream(xmlSource); //uses Apache commons to obtain InputStream
BOMInputStream bomIn = new BOMInputStream(input); //create BOMInputStream from InputStream
InputSource is = new InputSource(bomIn); // InputSource with BOM removed

Document document = builder.parse(new InputSource(new StringReader(xmlSource)));
Document document2 = builder.parse(is);
System.out.println("Document=" + document.getDoctype()); // always null
System.out.println("Document2=" + document2.getDoctype()); // always null

return document;
}

私はこれらのことを試しました: BOM が変換の失敗を引き起こしていると考えて BOMInputStream を作成しました。これは私の問題だと思いましたが、BOMInputStream を InputSource に渡しても違いはありません。単純な XML のリテラル String を渡してみましたが、null しかありません。toString メソッドが返す[#document:null]

Java 6 を使用する JSF 実装である Xpages を使用しています。Document クラスのフルネームは、同じ名前の Xpage 関連クラスとの混同を避けるために使用されます。

4

2 に答える 2

1

これを使用して試すことができます: http://www.wissel.net/blog/downloads/SHWL-8MRM36/ $File/SimpleXMLDoc.java

于 2013-11-12T03:13:56.317 に答える