对方spring boot调用axis2调用,传过来的参数为null,求解答

使用axis调用webservice时 服务端接收到的参数为null
[问题点数:50分]
使用axis调用webservice时 服务端接收到的参数为null
[问题点数:50分]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
2011年4月 .NET技术大版内专家分月排行榜第二
2011年3月 .NET技术大版内专家分月排行榜第三
2017年2月 总版技术专家分月排行榜第三
2018年1月 .NET技术大版内专家分月排行榜第一2017年5月 .NET技术大版内专家分月排行榜第一2017年4月 .NET技术大版内专家分月排行榜第一2017年3月 .NET技术大版内专家分月排行榜第一2017年2月 .NET技术大版内专家分月排行榜第一2016年10月 .NET技术大版内专家分月排行榜第一2016年8月 .NET技术大版内专家分月排行榜第一2016年7月 .NET技术大版内专家分月排行榜第一
匿名用户不能发表回复!|对方用axis调用,传过来的参数为null,求解答_百度知道
对方用axis调用,传过来的参数为null,求解答
我有更好的答案
.&#47!&quot..这个程序明显不整洁。 public Test getTestBybh(String scbh)throws Exception{ if(bh == null){ throw new Exception(&quot,一般的统一捕捉异常信息 } return getH参数值为空;/此处异常被捕捉后就知道是啥错误了;); &#47..
采纳率:94%
来自团队:
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。Axis2介绍和例子_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
Axis2介绍和例子
阅读已结束,下载本文需要
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,同时保存到云知识,更方便管理
还剩62页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢博客分类:
1、wsdl文件:
&?xml version="1.0" encoding="UTF-8" ?&
- &wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:ns1="http://org.apache.axis2/xsd" xmlns:ns="http://jh.com" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" targetNamespace="http://jh.com"&
&wsdl:documentation&TestWeb&/wsdl:documentation&
+ &wsdl:types&
- &xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://jh.com"&
- &xs:element name="getName"&
- &xs:complexType&
- &xs:sequence&
&xs:element minOccurs="0" name="name" nillable="true" type="xs:string" /&
&/xs:sequence&
&/xs:complexType&
&/xs:element&
- &xs:element name="getNameResponse"&
- &xs:complexType&
- &xs:sequence&
&xs:element minOccurs="0" name="return" nillable="true" type="xs:string" /&
&/xs:sequence&
&/xs:complexType&
&/xs:element&
&/xs:schema&
&/wsdl:types&
- &wsdl:message name="getNameRequest"&
&wsdl:part name="parameters" element="ns:getName" /&
&/wsdl:message&
- &wsdl:message name="getNameResponse"&
&wsdl:part name="parameters" element="ns:getNameResponse" /&
&/wsdl:message&
- &wsdl:portType name="TestWebPortType"&
- &wsdl:operation name="getName"&
&wsdl:input message="ns:getNameRequest" wsaw:Action="urn:getName" /&
&wsdl:output message="ns:getNameResponse" wsaw:Action="urn:getNameResponse" /&
&/wsdl:operation&
&/wsdl:portType&
+ &wsdl:binding name="TestWebSoap11Binding" type="ns:TestWebPortType"&
&soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" /&
- &wsdl:operation name="getName"&
&soap:operation soapAction="urn:getName" style="document" /&
- &wsdl:input&
&soap:body use="literal" /&
&/wsdl:input&
- &wsdl:output&
&soap:body use="literal" /&
&/wsdl:output&
&/wsdl:operation&
&/wsdl:binding&
- &wsdl:binding name="TestWebSoap12Binding" type="ns:TestWebPortType"&
&soap12:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" /&
- &wsdl:operation name="getName"&
&soap12:operation soapAction="urn:getName" style="document" /&
+ &wsdl:input&
&soap12:body use="literal" /&
&/wsdl:input&
- &wsdl:output&
&soap12:body use="literal" /&
&/wsdl:output&
&/wsdl:operation&
&/wsdl:binding&
- &wsdl:binding name="TestWebHttpBinding" type="ns:TestWebPortType"&
&http:binding verb="POST" /&
- &wsdl:operation name="getName"&
&http:operation location="getName" /&
- &wsdl:input&
&mime:content type="application/xml" part="parameters" /&
&/wsdl:input&
+ &wsdl:output&
&mime:content type="application/xml" part="parameters" /&
&/wsdl:output&
&/wsdl:operation&
&/wsdl:binding&
- &wsdl:service name="TestWeb"&
- &wsdl:port name="TestWebHttpSoap11Endpoint" binding="ns:TestWebSoap11Binding"&
&soap:address location="http://localhost:9090/axis2/services/TestWeb.TestWebHttpSoap11Endpoint/" /&
&/wsdl:port&
- &wsdl:port name="TestWebHttpSoap12Endpoint" binding="ns:TestWebSoap12Binding"&
&soap12:address location="http://localhost:9090/axis2/services/TestWeb.TestWebHttpSoap12Endpoint/" /&
&/wsdl:port&
- &wsdl:port name="TestWebHttpEndpoint" binding="ns:TestWebHttpBinding"&
&http:address location="http://localhost:9090/axis2/services/TestWeb.TestWebHttpEndpoint/" /&
&/wsdl:port&
&/wsdl:service&
&/wsdl:definitions&
2、java调用方式:
package com.
import java.rmi.RemoteE
import javax.xml.namespace.QN
import org.apache.axiom.om.OMAbstractF
import org.apache.axiom.om.OME
import org.apache.axiom.om.OMF
import org.apache.axiom.om.OMN
import org.apache.axis2.AxisF
import org.apache.axis2.addressing.EndpointR
import org.apache.axis2.client.O
import org.apache.axis2.client.ServiceC
import org.apache.axis2.rpc.client.RPCServiceC
public class Test {
public static void main(String[] args) throws RemoteException {
Test test = new Test();
System.out.println("1
" + test.method1());
System.out.println("2
" + test.method2());
System.out.println("3
" + test.method3());
* 方法一:通过 wsdl2java反向生成的类 调用
* @throws RemoteException
public String method1() throws RemoteException {
TestWeb web = new TestWebStub();
GetName getName = new GetName();
getName.setName("admin ... ");
GetNameResponse res = web.getName(getName);
System.out.println(res.get_return());
return res.get_return();
* 方法二:
* 应用rpc的方式调用 这种方式就等于远程调用,
* 即通过url定位告诉远程服务器,告知方法名称,参数等, 调用远程服务,得到结果。
* 使用 org.apache.axis2.rpc.client.RPCServiceClient类调用WebService
如果被调用的WebService方法有返回值 应使用 invokeBlocking 方法 该方法有三个参数
第一个参数的类型是QName对象,表示要调用的方法名;
第二个参数表示要调用的WebService方法的参数值,参数类型为Object[];
当方法没有参数时,invokeBlocking方法的第二个参数值不能是null,而要使用new Object[]{}。
第三个参数表示WebService方法的 返回值类型的Class对象,参数类型为Class[]。
如果被调用的WebService方法没有返回值 应使用 invokeRobust 方法
该方法只有两个参数,它们的含义与invokeBlocking方法的前两个参数的含义相同。
在创建QName对象时,QName类的构造方法的第一个参数表示WSDL文件的命名空间名,
也就是 &wsdl:definitions&元素的targetNamespace属性值。
public String method2() throws AxisFault {
String url = "http://localhost:9090/axis2/services/TestWeb?wsdl";
// 使用RPC方式调用WebService
RPCServiceClient serviceClient = new RPCServiceClient();
// 指定调用WebService的URL
EndpointReference targetEPR = new EndpointReference(url);
Options options = serviceClient.getOptions();
//确定目标服务地址
options.setTo(targetEPR);
//确定调用方法
options.setAction("urn:getName");
* 指定要调用的getPrice方法及WSDL文件的命名空间
* 如果 webservice 服务端由axis2编写
* 命名空间 不一致导致的问题
* org.apache.axis2.AxisFault: java.lang.RuntimeException: Unexpected subelement arg0
QName qname = new QName("http://jh.com", "getName");
// 指定getPrice方法的参数值
Object[] parameters = new Object[] { "admin... 您终于进来了" };
// 指定getPrice方法返回值的数据类型的Class对象
Class[] returnTypes = new Class[] { String.class };
// 调用方法一 传递参数,调用服务,获取服务返回结果集
OMElement element = serviceClient.invokeBlocking(qname, parameters);
//值得注意的是,返回结果就是一段由OMElement对象封装的xml字符串。
//我们可以对之灵活应用,下面我取第一个元素值,并打印之。因为调用的方法返回一个结果
String result = element.getFirstElement().getText();
System.out.println(result);
* 方法三: 应用document方式调用
* 用ducument方式应用现对繁琐而灵活。现在用的比较多。因为真正摆脱了我们不想要的耦合
public String method3() {
OMElement result =
// String url = "http://localhost:8080/axis2ServerDemo/services/StockQuoteService";
String url = "http://localhost:9090/axis2/services/TestWeb?wsdl";
Options options = new Options();
// 指定调用WebService的URL
EndpointReference targetEPR = new EndpointReference(url);
options.setTo(targetEPR);
// options.setAction("urn:getPrice");
ServiceClient sender = new ServiceClient();
sender.setOptions(options);
OMFactory fac = OMAbstractFactory.getOMFactory();
String tns = "http://jh.com";
// 命名空间,有时命名空间不增加没事,不过最好加上,因为有时有事,你懂的
OMNamespace omNs = fac.createOMNamespace(tns, "");
OMElement method = fac.createOMElement("getName", omNs);
OMElement symbol = fac.createOMElement("name", omNs);
// symbol.setText("1");
symbol.addChild(fac.createOMText(symbol, "Axis2 Echo String "));
method.addChild(symbol);
method.build();
result = sender.sendReceive(method);
System.out.println("*************** " + result);
//&ns:getNameResponse xmlns:ns="http://jh.com"&&ns:return&欢迎您。 Axis2 Echo String &/ns:return&&/ns:getNameResponse&
} catch (AxisFault axisFault) {
axisFault.printStackTrace();
return result + "";
3、输出结果:
欢迎您。 admin ...
欢迎您。 admin ...
欢迎您。 admin... 您终于进来了
欢迎您。 admin... 您终于进来了
*************** &ns:getNameResponse xmlns:ns="http://jh.com"&&ns:return&欢迎您。 Axis2 Echo String &/ns:return&&/ns:getNameResponse&
&ns:getNameResponse xmlns:ns="http://jh.com"&&ns:return&欢迎您。 Axis2 Echo String &/ns:return&&/ns:getNameResponse&
浏览 20854
浏览: 203033 次
来自: 北京
[b][b][b][b][b][b][b][b][b][b][ ...
public class Test {
public sta ...
国外有个调研:人临死前最后悔的事情是什么?排在第一位的是:这一 ...
[img][/img][url][/url]
(window.slotbydup=window.slotbydup || []).push({
id: '4773203',
container: s,
size: '200,200',
display: 'inlay-fix'webservice axis接口客户端调用返回空值的问题 - 简书
webservice axis接口客户端调用返回空值的问题
问题描述:使用wsdl生成客户端调用服务端能正常返回数据,使用axis1.4调用接口在无参的情况下能正常返回数据,传参后有返回但数据为空。.1)在call.setOperationName是必须通过Qname来制定namespaceURI2)在设定参数时,不使用服务端定义的参数名,而是arg0~argN来定义,也不需制定namespaceURI,上述代码call.addParameter(new QName(namespace, "TransNo"), XMLType.XSD_STRING, ParameterMode.IN);修改为call.addParameter("arg0", XMLType.XSD_STRING, ParameterMode.IN);若此时仍然无数据返回:大招来了call.setEncodingStyle("UTF-8");加入这么一句其中编码可查看服务端的charset
Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智能路由,微代理,控制总线)。分布式系统的协调导致了样板模式, 使用Spring Cloud开发人员可以快速地支持实现这些模式的服务和应用程序。他们将在任何分布式...
国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿: 前言: 排版 by Dr_Ting公众号:庭说移步 tingtalk.me 获得更友好的阅读体验 Q/GDW XXXX-201X《面向对象的用电信息数据交换协议》是根据《国家...
1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语法,集合的语法,io的语法,虚拟机方面的语法。 1、一个&.java&源文件中是否可以包括多个类(不是内部类)?有什么限制? 可以有多个类,但只能有一个publ...
百战程序员_ Java1573题 QQ群:034603 掌握80%年薪20万掌握50%年薪10万 全程项目穿插, 从易到难,含17个项目视频和资料持续更新,请关注www.itbaizhan.com 国内最牛七星级团队马士兵、高淇等11位十年开发经验专...
o王越:VMware存储API整理,比如核心的存储池与卷两者的CURD。可以参考:VMware in OpenStack、华为对接VMware这两个平台,两个平台地址或源码长生有。华为的纳管说明书:http://support.huawei.com/enterprise/d...
花子是个“聪明”的女人。 花子在二十多岁的时候就“娶”了个小丈夫,据说是她带班的学生,一个全校女孩子都喜欢的小鲜肉。她没等小鲜肉上大学,直接就把他“娶”回家了,为此她被学生家长闹到了教育委员会,不得已就辞去了教师的工作,这件事在当时是件非常丢人的事情!那会儿哪像现在,只要男...
芬坐在那里,不时地抬头看看窗外,走廊里空无一人,孩子们正在上课。 我安慰她没事的,已经告诉了梓晨,她下课后会直接过来。芬局促地笑了,不知道为什么我觉得这笑容令人钦佩。 芬的女儿梓晨,一个曾经患有自闭症的女孩,参加绘画比赛,刚拿了全市大奖,芬这次是来接受电视台采访,她静静的坐...
下班回家的时候,抄近路,穿过一个小区,小区是最近盖好的,高高的密集的窗户,漆黑的地下停车场,每次从停车场旁边过,我总要离得很远。 停车场是个黑色的长条状的洞,我总觉得它像个黑洞,会把我吃掉。 走过停车场,右拐,能看见一片高楼中几座没有被拔掉的旧楼,楼旧的都发黑了,脏黄色的玻...
我在陪伴一个人 他温暖如春的爱意 深深打动了我 我在陪伴一个人 他帅气逼人的脸颊 处处吸引了我 我在陪伴一个人 他讨人喜欢的性格 慢慢勾走了我 我在陪伴一个人 他体贴入微的照顾 常常感染了我 我在陪伴一个人 他至死不渝的诺言 往往安慰了我
使用WKScriptMessageHandler 时 遇到问题 ,专门用来 OC调用swift 方法的
项目名-Swift.h文件 ,出现 no name or protocal named 'WKScriptMessageHandler'没有找到遵守WKScriptM...}

我要回帖

更多关于 axis调用cxf服务端 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信