近来工作中要写一些webService的接口,所以要在本机测试,整理了一下本机调用接口的方法。
具体代码:String endpoint = "http://localhost:8080/xxDemo/services/xxService?wsdl";
//xxDemo是项目名,xxService和配置文件server-config.wsdd中的service的name要保持一致
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(endpoint);
call.setOperationName("querySortInfo");// WSDL里面描述的接口名称
call.addParameter("jkid",
org.apache.axis.encoding.XMLType.XSD_DATE,
javax.xml.rpc.ParameterMode.IN);// 接口的参数 假如接口有两个参数一个是jkid,一个是xmlDoc,都是字符串
call.addParameter("xmlDoc",
org.apache.axis.encoding.XMLType.XSD_DATE,
javax.xml.rpc.ParameterMode.IN);// 接口的参数
call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);// 设置返回类型
String result = (String) call.invoke(new Object[] { "jk18",xmlDoc }); 此xmlDoc是上文中已经生成的字符串
// 给方法传递参数,并且调用方法
System.out.println("result is " + result);