1

XLST ファイルに基づいて非 XML (テキスト) ファイルに解析したい XML ファイルがあります。両方のコードは正しいようで、手動でテストすると機能しますが、プログラムでこれを行うのに問題があります。

JDOM の XSLTransformer クラスを使用して XSLT を XML に適用すると、JDOM ドキュメントの形式で返されます。ここでの問題は、適切な XML ファイルではなく、"java.lang.IllegalStateException: Root element not set" エラーが発生するため、Document 内の何もアクセスできないように見えることです。

XSLT の結果として非 XML ファイルを取得する Java 内のより良い方法はありますか?

4

1 に答える 1

5

JDOM XSLTTransformer は、javax.xml.transform.TransformerJDOM の入出力用の便利なラッパーです。

JDOM 入力は、テキスト出力に簡単に変換されます。

Transformer transformer = TransformerFactory.newInstance().newTransformer(new StreamSource(stylesheet));
JDOMSource in = new JDOMSource(doc);
StringWriter writer = new StringWriter();
StreamResult out = new StreamResult(writer);
transformer.transform(in, out);
return writer.toString();
于 2010-04-13T14:39:12.147 に答える