如何将 soap 响应转换为 java 中的字符串?

How to convert soap response to string in java?

我正在使用 WebServiceTemplate 来使用 SOAP 响应。出于日志记录的目的,我需要获取字符串中的 SOAP 响应。 例如,"<envelope><body><name>xyz</name></body></envelope>"

如果您使用spring,您可以在拦截器中使用log4j 添加日志。 Log4j 可以写入文件甚至数据库。希望对你有帮助。

您可以使用 WebServiceTemplate 实现如下所示:

ByteArrayOutputStream  bytArrayOutputStream = new ByteArrayOutputStream();
StreamResult result = new StreamResult(bytArrayOutputStream);
wsTemplate.sendSourceAndReceiveToResult(defautUri, source, result); 
final String reply = new String(bytArrayOutputStream.toByteArray())