首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

Axis2终竟能否传递复杂类型参数【求指导篇】

2013-11-14 
Axis2到底能否传递复杂类型参数【求指导篇】或者:?这个test方法中没有参数,所以没有输入参数的Element。若是

Axis2到底能否传递复杂类型参数【求指导篇】
或者:?这个test方法中没有参数,所以没有输入参数的Element。若是没有返回值,则没有Response的Element的。但是奇怪的是,在公司实习时,公司中使用的Axis2发布的服务,没有参数,但是依然有Element。只不过Element内部为空。?公司里Java端发布的时候,同样也是使用Axis2。但是生成的wsdl不同,难道还需要配置一下,这个问题有待解决……一直以为,无论什么框架,发布服务,生成的wsdl都是相同的。其实不然。只能说明,wsdl,大方向相同。type,message,bind ,service四大部分。但是具体的样式是不同的。尤其是type中的Element。但是不用担心,我们最好按照w3school规范来写。这样不同语言之间可以方便相互调用。还有一个问题需要请教Axis2传递复杂类型的参数问题。在Axis2客户端使用常用的RPC形式,是无法传递List类型的,List<String>也不可以,更何况是自定义对象。网上提供一种解决办法是,把List再次包装成一个对象,这样的话,Axis2传递自定义对象。如下: publicclassUserList {privateList<User>users;publicList<User> getUsers() {returnusers; }publicvoidsetUsers(List<User> users) {this.users= users; }} 但是使用RPC形式,返回值是无法转化成自定义对象,错误如下: org.apache.axiom.om.impl.llom.OMTextImpl 无法转化List?这两个问题,有人解决了,可我尝试不正确,是配置的问题还是缺少步骤??其实Axis2发布服务以及调用方式有很多种。调用中最常用也最直接最方便的就是RPC形式了,但是RPC却不能传递复杂类型以及自定义对象参数。

热点排行