java调用WebService接口方法
package cn.cehb;
import java.net.MalformedURLException;
import java.rmi.RemoteException;
import org.apache.axis.client.Service;
import org.apache.axis.client.Call;
import javax.xml.namespace.QName;
import javax.xml.rpc.ParameterMode;
import javax.xml.rpc.ServiceException;
class Test {
/**
* @param args
*/
public static void main(String[] args) throws MalformedURLException, ServiceException, RemoteException {
String endpoint="http://localhost/WebService.asmx";
Call call;
Object res = "";
Service service = new Service();
try {
call = (Call)service.createCall();
String cit_account="123";
String cit_pwd="123";
String cit_userkey="1234";
call.setTargetEndpointAddress(new java.net.URL(endpoint));
call.setOperationName(new QName("http://WebService/","GetUserInfo")); //发布的方法名
//三个参数,主要要和net接口中的名称一致,类型尽量用String
call.addParameter("cit_account", org.apache.axis.encoding.XMLType.XSD_STRING,ParameterMode.IN);
call.addParameter("cit_pwd", org.apache.axis.encoding.XMLType.XSD_STRING,ParameterMode.IN);
call.addParameter("cit_userkey", org.apache.axis.encoding.XMLType.XSD_STRING,ParameterMode.IN);
call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);
call.setUseSOAPAction(true);
//这里注意有方法名,已经引用的地址。从net接口中找
call.setSOAPActionURI("http://\WebService/GetUserInfo");
res =call.invoke(new Object[]{cit_account,cit_pwd,cit_userkey});
//返回值String
System.err.println("==11=>"+res);
} catch (ServiceException e) {
e.printStackTrace();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (RemoteException e) {
e.printStackTrace();
}catch (Exception e) {
e.printStackTrace();
}
finally {
}
}
}
posted on 2014-01-07 15:24 love so much 阅读(425) 评论(0) 编辑 收藏 举报