我正在编写一个Java客户端来调用SOAP Web服务。它接受一个文件作为附件,所以在java中,我需要将内容类型声明为multipart。我正在使用apache http
库来编写Java客户端
我在Java中指定了如下
httppost.setHeader(“Content-Type”,“multipart / related”);
但是我收到了以下错误
Couldn't create SOAP message due to exception: javax.xml.ws.WebServiceException: MIME boundary parameter not foundmultipart/related
请告诉我如何解决此错误。应该在Java中指定什么内容类型。
当我指定为
时httppost.setHeader( "Content-Type", "text/xml; charset=utf-8" );
再次,我得到了以下异常
Caused by: com.sun.xml.ws.streaming.XMLStreamReaderException: XML reader error: com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected character '-' (code 45) in prolog; expected '<'
我应该继续哪一个以及如何解决相应的例外?
答案 0 :(得分:0)
我假设您正在尝试使用MTOM + XOP?
第一个错误是明确的:你没有边界。多部分不仅仅是一个内容类型,它要求您使用必须在标题中声明的边界标记不同的部分,并要求换行等在正确的位置。
其次,如果您正在尝试执行此操作,则不能只将文件发送到SOAP端点,您需要在第一部分中使用soap body来引用第二部分中的文件。