Axis1.4 多参数传递(document/literal)

 
   | |

导读:concat方法有两个参数,但客户端只能传递一个参数到服务器端,这里使用的是document/literal绑定方式,如果是document/literal(wrapped)方法,可以实现多参数传递。

关键词:concat 客户端 服务器端 document literal

 
正在加载数据...

  下面介绍一下使用Axis 1.4开发webservice服务中的多参数传递问题,使用document/literal的SOAP绑定协议。

  首先准备好Axis的环境,及Axis 1.4所需要的jar包,放到web工程下的lib目录下。

  待发布的服务接口方法是这样的:

  然后手写wsdl文件(可以使用eclipse插件WTP设计wsdl),如:

  使用build.xml生成服务器端和客户端的代码,build.xml 附后:

  然后将在服务器端的代码中将deploy.wsdd拷贝到WEB-INF/下,使用build.xml部署服务,可以访问wsdl描述(因为这一步的开发比较简单,基本上有了wsdl描述之后,都是自动生成的,网上也有一些描述,这里不再叙述)。

  上面的这种方式会遇到多参数传递问题,即concat方法有两个参数,但客户端只能传递一个参数到服务器端,相信很多人遇到这个问题,下面的解决方案就是解决此问题的。

  注意,这里使用的是document/literal绑定方式,如果是document/literal(wrapped)方法,可以实现多参数传递,但如果客户要求是document/literal方式,下面的做法是非常值得一看的。

  思路是将方法中的所有参数封装为一个对象,进行传递,这里需要做的是客户端传递参数需要封装,服务器端需要解析这个对象,听起来很麻烦,做起来是很容易的。

  待发布的方法现在变成 

  其中ConcatParam 封装了原来方法中的两个参数s1, s2,它是一个非常简单的javabean。

  我使用了由java到wsdl的转化,

  由eclipse插件WTP生成wsdl文件,如下:


 
  然后通过此wsdl生成客户端和服务器端代码,通过客户端访问服务器端,注意在客户端传递参数的时候需要封装,这样的话多参数的传递问题就解决了。

  附1:工程结构图。

  附2:build.xml

原文出处:http://gocom.primeton.com/modules/newbb/item57929_57929.htm
 
来源:goCom构客网    
 
 
 
 
 

热门技术手册排行

 

随着开源技术越来越成熟,一个稍有开发经验的人通过学习就可以用开源的产品和技术构建一套可用的系统。对于从事软件开发的人员,尤其是对Java或动态语言相关领域的人来说,“开源”也许是他们最喜爱的单词。但是,很多时候我们需要的不仅仅是一个可用的系统,而是希望这个系统开发更简易、性能更高和扩展性更好等。这确实是一个令人头痛的问题。本指南很多地方都是点到为止,要深入了解相关信息的读者请借助参考资料、网站等自行挖掘。

 

本专题分六部分探讨SOA设计模式,当初设计面向服务架构的一大初衷就是降低服务间耦合度,由此提高服务的灵活性和自由度。

 

业务流程管理(business process management,bpm)不是一个新概念,甚至不是一个新名词。它是从相关的业务流程变革领域,如业务流程改进(bpi)、业务流程重组(bpr)、业务流程革新中发展起来的。流程管理技术也是从早期的工作流管理、eai、流程自动化、流程集成、流程建模、流程优化等技术中发展起来的。

 

TOAGF是一个架构框架,简而言之,TOGAF是一种协助发展,验收,运行,使用,和维护架构的工具。它是基于一个迭代(Iterative)的过程模型,支持最佳实践和一套可重用的现有架构资产。

 

云计算的概念越来越流行,Amazon、Google和IBM是第一批将云计算引入公众视线的公司。云计算就是新的Web2.0,一种既有技术上的市场绽放。

 

Mashup是一个非常cool的新的应用程序种类。如果你想真正的了解它们,我们需要回过头来看看你现在的计算机,其实它就是一个非常好的帮助你理解mashup的模型。现在开源的操作系统无疑是非常好的apis的集合或应用程序编程接口,帮助开发者去构建其应用程序。计算机本身也是一个很好的为用户提供接口的例子,键盘和鼠标可以被理解为你通过计算机的接口而使用的不同的应用程序。本技术手册为读者提供了一些相关信息,如果需要深入了解mashup,读者可以借助其他参考资源。

查看更多
 
 

登录TechTarget中国

关闭
本服务仅向TechTarget中国的会员开放,请登录或立即免费注册
电子邮件地址:
请输入您的电子邮件地址
密码:
下次自动登录