//请求webservice获得数据
String url = " "; //webservice的服务地址
// 定义服务
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(new java.net.URL(
url));
call.setUseSOAPAction(true);
call.setReturnType(new QName("http://www.w3.org/2001/XMLSchema",
"string"));
call.setOperationName(new QName("SJTSoft.JSTMBS", "GetData")); //前者为命名空间,后者为调用方法名
call.setSOAPActionURI("SJTSoft.JSTMBS/GetData");
call.addParameter(new QName("SJTSoft.JSTMBS","name"),// 这里的name对应参数名称 ,参数根据WrbService需要传的参数而定。
XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName("SJTSoft.JSTMBS","name"),// 这里的name对应参数名称
XMLType.XSD_STRING, ParameterMode.IN);
String retVal2 = (String) call
.invoke(new Object[] { }); //大括号里需要传参数的值。
logger.info("返回值:" +retVal2.toString() );
String url = " "; //webservice的服务地址
// 定义服务
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(new java.net.URL(
url));
call.setUseSOAPAction(true);
call.setReturnType(new QName("http://www.w3.org/2001/XMLSchema",
"string"));
call.setOperationName(new QName("SJTSoft.JSTMBS", "GetData")); //前者为命名空间,后者为调用方法名
call.setSOAPActionURI("SJTSoft.JSTMBS/GetData");
call.addParameter(new QName("SJTSoft.JSTMBS","name"),// 这里的name对应参数名称 ,参数根据WrbService需要传的参数而定。
XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName("SJTSoft.JSTMBS","name"),// 这里的name对应参数名称
XMLType.XSD_STRING, ParameterMode.IN);
String retVal2 = (String) call
.invoke(new Object[] { }); //大括号里需要传参数的值。
logger.info("返回值:" +retVal2.toString() );
调用webservice,还需要导入Jar包依赖。
我导入了以下Jar包:
activation-1.1.1.jar
axis-1.4.jar
axis-jaxrpc-1.4.jar
commons-discovery-0.5.jar
jaxrpc.jar
mail-1.5.0-b01.jar
wsdl4j-1.6.3.jar
这些jar包在网上都能搜出来的。