【问题标题】:Consecutive calls to 'SOAPMessage.writeTo' throw Read Error连续调用“SOAPMessage.writeTo”引发读取错误
【发布时间】:2015-03-05 12:40:31
【问题描述】:

我的应用程序中的 SOAP 消息包含从文件创建的附件。 当我多次调用 soapMessage.writeTo(System.out); 时,它会引发以下异常:

SEVERE: SAAJ0540: Error during saving a multipart message
com.sun.xml.internal.messaging.saaj.SOAPExceptionImpl: Error during saving a multipart message
    at com.sun.xml.internal.messaging.saaj.soap.MessageImpl.writeTo(MessageImpl.java:1233)
    at main.SOAPMTOMUtilityTest.main(SOAPMTOMUtilityTest.java:102)
Caused by: java.io.IOException: Read error
    at java.io.FileInputStream.readBytes(Native Method)

这是一个错误吗?还是我做错了什么?

【问题讨论】:

  • 请贴一些代码。
  • 我找到了原因。返回相同输入流的是“MyDataSource”类。预计每次都会返回一个新的 InputStream。

标签: java soap saaj


【解决方案1】:

我找到了原因。它是返回相同输入流的“MyDataSource”类。每次被调用时都应该返回一个新的 InputStream。

public class MyDataSource implements DataSource {
    public InputStream getInputStream() throws IOException {

        //return inputStream;
InputStream inputStream= new FileInputStream(file);
return inputStream;
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-23
    • 2015-08-21
    • 1970-01-01
    相关资源
    最近更新 更多