通过Web服务将文件从java发送到.net

时间:2010-03-24 15:18:20

标签: java .net web-services file binary

我已经构建了.NET 1.1 Web Service,它应该接受文件并保存它们。

以下是webmethod的代码:

    [WebMethod]
  public bool SaveDocument(Byte[] docbinaryarray, string docname)
  {
   string dirPath = @"C:\Temp\WSTEST\";

   if(!Directory.Exists(dirPath))
   {
    Directory.CreateDirectory(dirPath);
   }
   string filePath = dirPath + docname;

   FileStream objfilestream = new FileStream(filePath, FileMode.Create, FileAccess.ReadWrite);
   objfilestream.Write(docbinaryarray, 0, docbinaryarray.Length);
   objfilestream.Close();

   return true;
  }

当我在.NET中使用这个Web服务创建一个客户端时,一切都很顺利,但是当我的同事试图从JAVA客户端向我发送文件时,我没有得到实际的文件。我得到的只是一个只有一个元素的字节数组。

文件的字节数组的定义,在WSDL中如下所示:

<s:element minOccurs="0" maxOccurs="1" name="docbinaryarray" type="s:base64Binary" /> 

他发给我base64binary并且每次都失败。我得到的只是Byte数组,里面只有一个元素。

1 个答案:

答案 0 :(得分:1)

听起来像java中的错误 - 或者至少java没有发送.net服务所期望的内容。我们能看到java代码吗?