2014-04-01 50 views
0

我正在写一个Java客户端来调用SOAP Web服务。它接受一个文件作为附件,所以在java中,我需要声明内容类型为multipart.I am使用apache http库来编写Java客户端。肥皂web服务中多部分请求的内容类型

我指定它,我的Java如下

httppost.setHeader( “内容类型”, “多部分/相关的”);

,但我得到了下面的错误

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

我假设你正在尝试使用MTOM + XOP?

第一个错误很明显:你没有边界。多部分不仅仅是一种内容类型,它要求您用标题中必须声明的边界标记不同的部分,并要求换行符等位于正确的位置。其次,如果您正在尝试执行的操作,则不能只是将文件发送到SOAP端点,则需要在第一部分中引用第二部分中的文件的肥皂主体。

+0

我正在使用apache http库。你能不能让我知道如何去做 – Anand

+0

一些代码示例会有帮助。 – Anand

+0

为了实现有效的MTOM + XOP交互,您需要了解更多的知识,请先阅读它。 – nablex