私はjava-wsの Provider 実装を使用しており、できればlog4jを使用して、操作を試みる前に XML 要求をログに記録したいと考えています。
TransformerFactory
受信した生の XML (以下) を使用してログに記録しようとしましたstdout
が、これは機能しますが、そうすると、Source オブジェクトは使用できなくなり、ログを超えて NULL エラーが生成されます。
これはストリームオブジェクトであり、一度しか使用できないためだと思います。
private void printSource(Source source) {
try {
System.out.println("==========RESPONSE============");
TransformerFactory factory = TransformerFactory.newInstance();
Transformer transformer = factory.newTransformer();
transformer.transform(source, new StreamResult(System.out));
System.out.println("\n==============================");
}
catch(Exception e) {
System.out.println(e.getMessage());
}
}