0 0

如何解决WebService 服务端接收客户端传输的附件不完整的问题30

环境:WebLogic1001,AIX 6.1
问题描述:服务器短获得客户端通过soapMessage传送过来的附件文件不完整

客户端通过SOAPMessage的addAttachmentPart方式上传附件,主要代码如下






AttachmentPart part=soapMessage.createAttachmentPart();
part.setContentType("application/octet-stream");
FileDataSource fds=new FileDataSource(fullPathNm);
part.setDataHandler(new DataHandler(fds));
soapMessage.addAttachmentPart(part);




服务器段主要是对这个soapMessage进行处理 主要代码如下





it=soapMessage.getAttachments();
File outFile=null;
 
try{
  while(it.hasNext()){
     AttachmentPart part=(AttachementPart) it.next();
     outFile=new FileOutputStream(outFile); 
     os = new FileOutputStream(new File(dir,fileName));
     is = part.getDataHandler().getInputStream();
     byte [] b=new byte[8192];   
     int nr;
     while((nr = is.read(b)) != -1){
        //服务器段写入文件大小不争取,内容不完整
        os.write(b,0,nr);
     }
  }
}finally{
   os.close();
   is.close();
}




以上代码运行后,服务器端文件大小不完整。
以上问题已经分析一天了,没有找到原因
目前发现客户端确实上传了完整的文件
但是服务端获取的文件也确实不完整
难道传输有问题,会有什么问题?

有谁可以帮忙分析下

问题补充:这次是服务器升级后出现的问题
原环境:weblogic814+jdk1.4
现环境:weblogic1001+jdk1.5

问题补充:目前不知道如何查看服务器端是否有大小限制,貌似没有。
现在的情况是,上传同一个附件,运行多次,50%上传完整,50%上传不完整
目前还没有答案

相关推荐

    使用WebService上传一个附件或者多个附件的实现方式

    服务端接收来自客户端的请求,处理文件上传逻辑,并可能将文件存储在服务器上。 3. **处理大附件**:大附件的上传可能会遇到内存限制和传输效率问题。一种常见解决方案是使用流式处理(Streaming),不将整个文件...

    使用Webservice实现大容量附件上传

    Web服务(Webservice)是一种跨平台、跨语言的通信协议,它允许不同系统之间的应用程序进行交互。本文将深入探讨如何利用Web服务来实现大容量附件的上传。 一、Web服务简介 Web服务基于XML(Extensible Markup ...

    基于spring+cxf实现用户文件传输的webservice

    基于spring+cxf实现用户文件传输的webservice 在本文中,我们将探讨如何使用Spring+CXF实现用户文件传输的Webservice。该Webservice提供了基本的报文上传和查询功能,同时还提供了用户身份验证功能。 Spring 和 ...

    cxf webService客户端

    Web服务客户端是调用远程Web服务的程序,它通过发送请求并接收响应与服务端进行交互。在CXF框架中,我们可以使用WS-I Basic Profile兼容的客户端API来实现这一功能。 创建CXF Web服务客户端的第一步是获取服务的...

    webservice接口一个或多个附件上传

    2. **文件处理**:在服务端,接收到文件数据后,需要将其从Base64解码回原始二进制格式,并保存到服务器的特定位置。考虑到安全性,应确保文件保存路径的安全性,避免直接暴露在公共目录下。 3. **错误处理**:对于...

    WebService二进制处理

    为了解决这个问题,MTOM(Message Transmission Optimization Mechanism,消息传输优化机制)应运而生。 MTOM是一种用于优化SOAP消息传输的技术,尤其适用于处理大型二进制数据。当使用MTOM时,二进制数据不再以XML...

    基于gSoap的webservice开发

    3. 文件上传和下载:客户端可以通过DIME发送文件到服务端,服务端接收到请求后,可以解码DIME附件并保存文件;反之,服务端也可以通过DIME将文件发送给客户端。 客户端的开发主要包括: 1. 创建客户端对象:根据...

    WebService大讲堂之Axis2

    Axis2能够处理复杂的Java对象,将其序列化为XML,并通过SOAP消息在服务端和客户端之间传输。 七、使用services.xml文件发布WebService 虽然Axis2支持0配置发布WebService,但某些场景下,开发者可能需要更细致地...

    WebService上传下载

    服务端的代码通常会包含Spring和CXF的配置文件、服务接口和实现类,而客户端的代码则包含生成的WebService客户端类和调用服务的示例代码。通过分析和运行这些代码,可以加深对WebService文件下载原理的理解,并学习...

    jdbc+webservice定时任务

    这个项目中,开发者利用Java的JDBC(Java Database Connectivity)接口来与Oracle数据库进行交互,执行数据库的备份操作,同时结合WebService技术,将增量备份的表数据发送到服务端,确保数据的一致性和完整性。...

    WebService入门介绍及实例

    WebService为跨平台、跨语言的应用程序集成提供了标准化的解决方案。理解XML、WSDL、SOAP和UDDI的基本概念,以及如何创建和调用WebService,是掌握这项技术的关键。在实际开发中,WebService常用于企业级应用的集成...

    webservice简单实现

    服务端接收到消息后,解析请求,执行相应操作,然后返回结果,同样封装成SOAP响应。 5. **部署与测试** 服务端应用程序可以作为一个独立的Java应用运行,或者部署在像Tomcat这样的应用服务器上。客户端应用程序...

    java webservice 详细开发示例介绍

    JAX-RPC提供了一种方法调用机制,允许远程执行服务端的方法,返回结果给客户端。 然而,在JAX-WS(Java API for XML Web Services)规范出现之后,JAX-RPC逐渐被淘汰。JAX-WS是对JAX-RPC的一种演进,它不再支持RPC/...

    webservice文件上传下载.zip

    服务端定义一个接口,实现文件上传、下载及获取文件数的方法,客户端通过SOAP调用这些方法。 2. **Apache CXF**:另一种流行的Java Web服务框架,提供更高级的功能,如自动代码生成和WSDL第一设计。 3. **测试工具**...

    webservice学习二之(1)axis2服务器端方式开发总结(附件含有项目)

    客户端通常需要知道服务的WSDL地址,然后能够构造并发送SOAP请求,接收并解析响应。 在开发过程中,理解Axis2的模块系统也很关键,它允许你通过添加或移除模块来定制服务的行为。例如,安全模块可以用于实现WS-...

    webservice分段上传文件

    1. ComponentAction.java:这个文件名暗示它可能是Spring MVC或者类似的MVC框架中的一个Controller组件,负责处理客户端的请求,如接收上传的文件段并进行整合。 2. ImplAttachmentService.java:这个名字可能表示...

    webservice实例

    文件`webservice 实例.doc`和`webservice短信调用.doc`可能包含具体的Web服务创建和短信调用的示例,可能涵盖了服务端和客户端的代码实现,以及可能出现的问题和解决方案。 通过上述内容,我们可以了解到Web服务的...

    DataHander.rar_axis datahand_web service _webservice

    标题 "DataHandler.rar_axis datahand_web service _webservice" 暗示了这是一个关于使用Axis框架来处理Web服务的项目,其中可能包含了客户端和服务端的数据处理组件。描述中提到的"webservices附件传输"指的是通过...

    Flex附件上传下载

    本文将深入探讨如何使用Flex结合WebService技术来实现在客户端与服务器之间的附件上传和下载功能。 首先,Flex是Adobe开发的一种开源的、基于ActionScript的编程语言和框架,用于构建具有丰富用户体验的Web应用程序...

Global site tag (gtag.js) - Google Analytics