`
JaNer
  • 浏览: 45228 次
  • 性别: Icon_minigender_1
  • 来自: 昆明
社区版块
存档分类
最新评论

关于基于XFire的webservice实现和调用的疑惑

阅读更多
是这样的:关于基于XFire的webservice实现和调用的问题:
客户端调用服务的代码如下:(伪码示意一下)
public serviceClient(){
  String inXml = "一个XML格式的字符串";
  //返回一个XML格式的字符串
  String outXml service.invokeServiceA(inXml);
  DTO dto = util.parseXmltDtoByDomej(outXml);
  ....................
  ....................
}

我的困惑如下:
我们现在虽然是以XML格式传递参数,但它是一个java.lang.String,并不是真正意义上的XML。我现在客户端也是Java自然可以接收识别。但如果服务消费端是Delphi等写的,那如何接受这个String~~~~   我怀疑我们是不是不应该传递String,而是应该传递一真正意义上的XML作为参数呢? 如果传Stirng的话,那和HttpInvoker,RMI等的实现岂不一点优势都没有了~?
分享到:
评论
6 楼 rtdb 2007-11-26  
性能调优原则:大局着眼,关键处下手。
为了几个毫秒的延迟,放弃开放性是不可想象的。

真的是高并发高性能系统(比如网络游戏的数据同步),
当然不会用web service, 甚至你会用JAVA写网络部分么?


反之若是数据量很小,则是另一回事了。
5 楼 smyl 2007-11-26  
不知道你写的是什么例子。

没错,这个xml是String方式传递的,但是关键在这个xml上,如果这个xml是用wsdl描述过的,那么客户端就可以解析这个xml,获得web service(各种语言对应的)

所以问题不在传递是String还是Object
4 楼 JaNer 2007-11-26  
并发低而且XML数据量小结构简单的情况下可以忽略解析过程的性能损耗。反之,则不得不考虑。系统性能的提升不能完全依赖于N个CPU或MG的内存。作为一个程序员更应该忽略硬件环境从应用本身下手进行调优。
对于信息孤岛的理解:WebService是可以完全解决楼上所谓信息孤岛的问题。但我对于信息孤岛的理解是是这样的。每一个商用系统都基于某一个行业应用,也就是说信息孤岛是相对的。只要能满足自身架构中各个
业务系统的资源共享就可以不算孤岛。我没没必要追求某项所谓的时髦技术,也没必要在应用中冠以几个自己都道不明白v其中奥妙的词汇就以为自己的这个架构很是牛B!
3 楼 rtdb 2007-11-25  
> 而RMI,Spring-HttpInvoker是通过Java对象(二进制)来传递参数的,避免了解析XML的性能损耗。

以现在的CPU而言,这点性能损耗是忽略不计的。
而且,传送Java对象,至少两边都要部署相同的对象吧,
结果就又成了信息孤岛。

相反的,开放与互联才是主流,WS和SOA的流行是有原因的。

2 楼 JaNer 2007-11-23  
还是不理解:
书上都说,WebService是以XML格式作为参数传递的,而RMI,Spring-HttpInvoker是通过Java对象(二进制)来传递参数的,避免了解析XML的性能损耗。所以WebService的优势在于异构系统之间的集成,因为他基于XML.所以具备平台无关性。但是我就想不通过,我们做的其实传的是一个Strong,并不是XML啊。只不过这个String被拼成了XML格式而已。如果Delphi来调这个WebService方法,他所得到的是一各Java数据类型的反参,而不是一个XML.困惑!如果是这样返回一个String的话,何必用WebService.RMI也可以做到啊,而且性能方面是WebService所不能及的。或许你会说,RMI不容易穿透防火墙,但一般我们的业务应用都是在专用网里,整个网络环境我们是可控的,想要什么端口都可以打开,以保证RMI方式的网络通讯顺畅。即便,你硬是说我们的服务有可能在互联网上应用,无法保证RMI实现的网络通信。那么我们也可以用Spring提供的HttpInvoker作为我们的远程访问实现方案,此种方案是基于HTTP通信的。
[PS:Spring的HttpInvoker机制是和Spring绑定的,也就是说服务端和客户端都要基于Spring的应用,注意是基于Spring不是基与Java.Spring有.Net版本,也就是说HttpInvoker也有一定程度上的异构系统集成能力。但如果说服务消费端有delphi、PB等的话,那就非WebService莫属了]
1 楼 rtdb 2007-11-23  
重点理解:
"一个XML格式的字符串"

基本知识:
网络也好,内存也罢,或是硬盘, 都只能处理二进制流。

真正意义上的XML,也要转成字符串,再变成二进制才能传送。
之所以是字符串,应为它是最兼容各种操作系统,编程语言和运行环境的。



相关推荐

    spring集成xfire webservice实现

    spring集成xfire webservice实现远程调用 将项目发布后,点击http://localhost:8080/SpringWebServiceTest/services/HelloWS?wsdl即可 其中也有客户端的调用,自己试试吧。

    java使用XFire调用webService接口

    "Java 使用 XFire 调用 webService 接口" ...我们了解了服务端和客户端的开发步骤,并了解了使用 XFire 调用 webService 接口的优点。通过本文,我们可以更好地理解和应用 XFire 框架,提高 Web 服务的开发和集成效率。

    xfire webservice 完整实例下载

    XFire Webservice是一个基于Java的开源工具,它简化了创建、部署和消费Web服务的过程。在深入探讨这个完整实例之前,我们首先需要了解Web服务的基本概念。Web服务是一种通过网络进行通信的应用程序接口(API)。它们...

    基于 xfire 的 webservice 项目

    这个基于XFire的WebService项目,可能是为了演示如何利用XFire框架来构建和部署Web服务,以及如何与其他系统进行交互。 【描述】:虽然描述为空,但我们可以推断,这个项目可能包括了以下几个关键步骤和概念: 1. ...

    xfire webservice 上传下载源码

    以上就是关于"xfire webservice 上传下载源码"的相关知识点,希望对你理解和实践XFire在文件上传下载中的应用有所帮助。通过深入研究这个Demo,你可以进一步掌握如何利用XFire构建高效、安全的Web服务。

    Java使用XFire调用WebService接口

    这篇博客“Java使用XFire调用WebService接口”显然是讨论如何利用XFire这个开源框架来与Web服务交互。 XFire是Apache CXF项目的前身,它提供了一种简单的方式来创建和消费SOAP Web服务。XFire的强项在于其轻量级和...

    xfire实现webservice实例

    XFire是Apache CXF项目的前身,它提供了一个轻量级、高性能的框架,用于创建和调用Web服务。XFire通过简化编程模型和强大的注解支持,使得开发者能够快速地将Java接口转换为符合SOAP标准的Web服务。 二、Web服务...

    webservice xfire 客户端调用实现

    在XFire客户端调用实现中,首先需要获取到Web服务的WSDL文件,这个文件描述了服务的接口、方法、参数和返回类型。通过XFire提供的工具,我们可以根据WSDL生成对应的客户端代理类。这些代理类封装了调用远程服务的...

    xfire调用webservice

    xfire调用webservice xfire是一款基于Java的开源WebService框架,它提供了一个简单、灵活和高效的方式来开发和部署WebService。xfire可以与多种类型的WebService结合使用,如SOAP、REST、XML-RPC等。xfire还提供了...

    spring+xfire( 编写webservice完整配置+案例)

    Spring作为一个强大的框架,提供了全面的依赖注入和面向切面编程能力,而XFire是早先的Web服务实现,它允许开发者轻松地将Java接口转换为SOAP Web服务。在本教程中,我们将深入探讨如何使用Spring和XFire编写Web服务...

    Xfire调用webservice无法传递参数问题

    标题“Xfire调用WebService无法传递参数问题”暗示了开发者在尝试使用Xfire框架时遇到了参数无法正常传递到Web服务的情况。这可能涉及到多个方面,如编码问题、序列化错误、类型不匹配或者配置不正确等。以下是一些...

    简单的XFire WebService例子

    在这个“简单的XFire WebService例子”中,我们将深入探讨如何利用XFire来构建和消费Web服务。 【 WeberService概念】 Web服务是一种通过网络(通常是互联网)提供和使用功能的方法,它遵循特定的协议和标准,如...

    XFire框架实现WebService(二)

    通过学习"XFire框架实现WebService(二)"这篇教程,读者应该能够理解如何使用XFire创建和调用Web服务,以及如何利用其特性来提高开发效率和代码质量。在实际项目中,结合源码分析和实际操作,读者将能够更好地掌握这...

    xfire webservice实现附件上传

    XFire(现已被Apache CXF项目合并)是一个基于Java的开源Web服务框架,它利用了Java注解和XML Schema来简化Web服务的开发。XFire支持SOAP、RESTful风格的服务,并且可以与Spring框架无缝集成。对于附件上传,XFire...

    Spring+xFire实现webService

    Spring+xFire 实现 WebService 是一种在 Java 开发中创建和使用 Web 服务的方式,它结合了 Spring 框架的灵活性和 xFire(现在称为 Apache CXF)的 Web 服务功能。以下是对这个技术栈的详细说明: 1. **环境配置**...

    XFire Webservice 服务器端

    XFire Webservice 服务器端是一个专门用于游戏社区的网络服务接口,它允许开发者与XFire游戏客户端进行交互,实现各种功能,如用户登录、好友系统、游戏统计等。在这个压缩包文件中,"WSA"可能代表Web Service ...

    XFire WebService精简包

    XFire WebService精简包是针对开发者设计的一款轻量级工具集合,主要用于快速搭建和运行XFire WebService项目。在IT行业中,Web服务是一个关键组件,它允许不同系统和应用程序之间进行数据交换和功能调用,实现...

    Xfire Webservice的例子

    Xfire Webservice是一个基于Java平台的服务框架,它允许开发者创建和使用Web服务。这个框架的主要目的是简化Web服务的开发过程,使开发人员可以快速地构建分布式应用程序。在本例中,我们将探讨Xfire Webservice与...

    XFire Webservice 客户端

    XFire Webservice客户端可能设计为跨平台,可以在不同的操作系统上运行,如Windows、Mac OS和Linux,这需要考虑各种平台的API调用和兼容性问题。 **10. 开发工具与调试** 开发XFire Webservice客户端时,开发者可能...

Global site tag (gtag.js) - Google Analytics