将数据从Wcf客户端流式传输到Java服务器

将数据从Wcf客户端流式传输到Java服务器,java,.net,wcf,web-services,streaming,Java,.net,Wcf,Web Services,Streaming,我们的情况:我们有一个java服务器端,下面是Web服务的定义: @WebMethod(operationName = "upload") void upload( @WebParam(name = "User", partName = "User", header = true) String user, @WebParam(name = "Pwd",partName = "Pwd",header = true) String password, @WebParam(name = "Fi

我们的情况:我们有一个java服务器端,下面是Web服务的定义:

@WebMethod(operationName = "upload")
void upload(
 @WebParam(name = "User", partName = "User", header = true) String user,
 @WebParam(name = "Pwd",partName = "Pwd",header = true) String password,
 @WebParam(name = "Filename",partName = "Filename",header = true) String filename,
 @WebParam(name = "Data", partName = "Data",targetNamespace = "http://") @XmlMimeType("application/octet-stream")
DataHandler data) throws InvalidRequestException, ServiceException;
我们的客户是用c写的。“上载”方法自动生成的Wcf客户端请求参数为:

public partial class uploadRequest {
 [MessageBodyMemberAttribute(Namespace="http://", Order=0)]
 [XmlArrayAttribute(Form=XmlSchemaForm.Unqualified)]
 [XmlArrayItemAttribute(Form=XmlSchemaForm.Unqualified, IsNullable=false)]
 public Property[] Properties;

 [MessageBodyMemberAttribute(Namespace="http://", Order=1)]
 [XmlElementAttribute(Form=XmlSchemaForm.Unqualified, DataType="base64Binary")]
 public byte[] Data;

 public uploadRequest() {}

 public uploadRequest(Property[] Properties, byte[] Data) {
  this.Properties = Properties;
  this.Data = Data;
 }
}
这段代码运行良好,但我们需要数据作为流而不是字节[],因为我们想要上传大文件。现在,对于流媒体,我们需要为头部定义“属性”,而不是为主体定义“属性”(当然在配置文件中会有一些变化),但问题是:这是自动生成的

我的问题:我们如何强制wcf客户端为我们生成正确的代码?或者我们应该改变服务器端以实现这一点