1

その場で作成された XML ドキュメント オブジェクを持っています。スキーマに対して検証する必要があります。xerces 2 を使用しています。パーサーの機能を設定しました。XML を検証するために解析する必要があります。

このために、「parser.parse()」を呼び出す必要があります。ただし、parse() メソッドは「InputSource」をパラメーターとして受け取ります。しかし、私は Document オブジェクトを持っています。この Document オブジェクトを "InputSource" に変換して parse() メソッドに渡すにはどうすればよいですか。

誰でも助けてくれますか。

よろしくお願いします、

4

3 に答える 3

1
ByteArrayOutputStream docOutputStream = new ByteArrayOutputStream();
((XmlDocument)domDocument).write(docOutputStream);
ByteArrayInputStream docInputStream = new
ByteArrayInputStream(docOutputStream.toByteArray());
InputSource inputSource = new InputSource(docInputStream);
parser.parse(inputSource);
于 2011-10-11T14:22:03.267 に答える
0

これができるはずです:

  • スキーマ リソースに基づいて javax.xml.validation.Schema インスタンスを作成します。
  • スキーマ インスタンスから javax.xml.validation.Validator を作成します。
  • バリデーターと javax.xml.transfrom.dom.DOMSource を使用して DOM ドキュメントを検証します。
于 2011-10-11T14:21:11.737 に答える
0

Document を InputStream に変換するには、この質問を参照してください:ドキュメントまたはノードから InputStream を作成する方法

次に、InputSource(java.io.InputStream byteStream)を使用して、それを InputSource でラップします。

于 2011-10-11T14:14:38.993 に答える