本篇文章小编给大家分享一下java调用webservice的.asmx接口代码使用方法,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。
前言
接触到一个.asmx结尾的webservice接口,为了增加记忆决定记录下来。
一、接口类型
已.asmx结尾的接口
例:接口地址:http://IP地址/xxx/service/xxx/xxxx.asmx 方法名:test 参数类型:string
二、使用步骤
1.访问方式
代码如下(示例):
controller类:
String s = clientUtil.test("http://IP地址/xxx/service/xxx/xxxx.asmx", "test","test");
调用类:
public static String test(String Url, String methodName, String str) throws Exception { String ref = null; // webService链接地址 String url = Url; //获取域名地址,server定义的 String soapaction = "http://tempuri.org/"; Service service = new Service(); try { Call call = (Call) service.createCall(); call.setTargetEndpointAddress(url); // 设置要调用哪个方法 call.setOperationName(new QName(soapaction, methodName)); // 设置要传递的参数名 call.addParameter(new QName(soapaction,"str"),org.apache.axis.encoding.XMLType.XSD_STRING, javax.xml.rpc.ParameterMode.IN); // 提供标准类型 有addParameter就必须有setReturnType call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING); call.setUseSOAPAction(true); call.setSOAPActionURI(soapaction + methodName); // 调用方法并传递参数 ref = (String) call.invoke(new Object[]{str}); return ref; } catch (Exception e) { e.printStackTrace(); } return ref; }
2.导入的maven
如下:
javax.activation activation 1.1.1 org.apache.axis axis 1.4 axis axis-jaxrpc 1.4