上传文件:使用 Java Comsuming WCF Web 服务

Upload File: Comsuming WCF Web Service Using Java

我有一个 WCF Web 服务 (.NET C#)。我想通过 java 客户端应用程序使用该服务。

我使用以下代码成功连接到 Web 服务。但是现在我遇到了 uploadFile 方法的问题。

当我将字符串传递给请求实体时,它会调用 Web 服务方法,但是当我 passed/set FileInputStream RequestEntity 时,它会抛出异常...

Connection reset by peer: socket write error

我的Java客户端代码如下....

注意:当我传递字符串并设置 StringRequestEntity 然后它工作文件。

 new StringRequestEntity(statusAsXml, "text/plain", Constants.DEFAULT_ENCODING)

C#代码

我服务

        [OperationContract]
        [WebInvoke(Method = "POST", ResponseFormat = WebMessageFormat.Xml, BodyStyle = WebMessageBodyStyle.Wrapped, UriTemplate = "upload")]
        bool upload(Stream relativePath);

我得到了答案。这是分配有效内容类型的问题。我正在设置内容类型

 header.put("Content-type", "application/x-www-form-urlencoded");

使用以下内容类型后,我能够成功上传文件

httpConn.setRequestProperty("Content-Type","multipart/form-data");