预览加载中,请您耐心等待几秒...
1/8
2/8
3/8
4/8
5/8
6/8
7/8
8/8

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

HYPERLINK"http://wyang2008.javaeye.com/blog/518420"java调用webservice java调用webserviceXFire问一下.Net的开发者,开发WebServices有多困难?他们会被你的问题逗乐,他们会告诉你所有步骤花费的时间不会超过一分钟。再问一下Java开发者,运气好的话你会碰到上面的回答,一般情况下,你会得到一个完全不同的答案。从WebServices引入到Java中至今已经5年了,然而它仍然被认为是一门较新的技术,一个主要的原因就是使用Java实现WebServices太困难了。现在,随着新一代WebServices引擎XFire的发布,这种情况将会发生明显的变化。使用XFire,你可以把Java类方法发布为WebServices而不需要编写额外的代码。在这篇文章中,你将会看到XFire使WebServices开发变得多么容易和简单。WebServices使我们能够在网络上建立分布式系统,应用程序组件可以通过任何平台、任何语言和任何方式访问。无论应用程序如何开发,使用了什么语言,以及运行在什么操作系统平台上,只要它作为WebService,并且为协同解决问题而设计,那么你的应用程序,以任何语言开发或在任何平台上,都可以利用它的服务。这是WebService的主要概念。为了实现WebServices的平台无关性和实现访问独立性,软件行业需要遵循一些作为标准的技术。其中一些包括:---XML:在WebServices环境中各层之间进行传递的默认数据格式。---SOAP:封装和交换信息的默认协议。第一次被提出时,它是只取SimpleObjectAccessProtocol(简单对象访问协议)的首字母。但是现在SOAP更多被认为是一个特定的名词,以它自己而命名,同样很多人认为这是用词不当:SOAP实际上不是用来访问对象的。另外,它也不再简单。---WSDL(WebServicesDescriptionLanguage,WebServices描述语言):描述WebServices的语言。尽管基于XML并且可以被人理解,WSDL主要是由机器处理,由客户端程序读取和理解。下面的高级层次图表,基于WWW协会发布的“WebServicesArchitecture”(WebServices架构)文档,显示了这些技术在实际的工作环境中是如何发挥作用:XFire是一个免费的开源SOAP框架,它不仅可以极大方便地实现这样一个环境,并且可以提供许多WebServices规范中高级特征,这些特征在多数的商业或者开源工具都没有提供。你要恰当的理解这些单词:greateaseandsimplicity(非常轻松和简单)。你将会看到使用XFire创建WebServices是多么的简单。假如你的Web应用有一个Java类,并且你想把它的一个方法发布为WebServices,当使用XFire时,你不需要编写一行额外的Java代码。只需要编辑发布描述符,然后你就会得到一个WebServices。是的,它相当地简单。我们来看一个例子。一个简单的Java类我们的例子是一个银行业应用程序,服务器是运行在J2SE1.4.2_07下的ApacheTomcat5.5.7。假定你已经了解如何使用Java编写Web应用程序,并知道应该如何把它部署到ApacheTomcat服务器上。我们的Web应用程序非常简单;它只做一件事——将资金从一个账户转到另外一个账户上。一个普通的Java类BankingService包含了一个叫做transferFunds()的方法来为我们完成这项工作。它需要四个输入参数:1、StringfromAccount2、StringtoAccount3、doubleamount4、Stringcurrency代码如下: Java代码 packagecom.mybank.xfire.example; importjava.text.NumberFormat; importjava.text.DecimalFormat; /**XFireWebServicessampleimplementationclass. */ publicclassBankingServiceimplementsIBankingService{ //Defaultconstructor. publicBankingService(){ } /**Transfersfundfromoneaccounttoanother. */ publicStringtransferFunds( StringfromAccount,StringtoAccount,doubleamount,Stringcurrency){ S