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 { } } }
转自:http://blog.csdn.net/quwei7515/article/details/17952085