package com.kingdee.webapi.javasdk.test;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import org.apache.axis.encoding.XMLType;
import javax.xml.namespace.QName;
import javax.xml.rpc.ParameterMode;
public class TestWebService {
public static void main(String[] args) {
// 先调用登录 再调用客商
testLogin();
testMethod();
}
/**
* 测试调用登录接口
*/
public static void testLogin(){
try {
String webServiceNameSpace="http://地址:6889";
String endpoint = "http://10.10.1.190:6889/ormrpc/services/EASLogin";
Service service = new Service();
Call call = (Call) service.createCall();
call.setSOAPActionURI(webServiceNameSpace +"/login");
call.setTargetEndpointAddress(endpoint);
//login 为方法名
call.setOperationName(new QName(webServiceNameSpace,"login"));
//设置入参名称和入参类型
call.addParameter(new QName(webServiceNameSpace,"userName"),
XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName(webServiceNameSpace,"password"),
XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName(webServiceNameSpace,"slnName"),
XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName(webServiceNameSpace,"dcName"),
XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName(webServiceNameSpace,"language"),
XMLType.XSD_STRING, ParameterMode.IN);
call.addParameter(new QName(webServiceNameSpace,"dbType"),
XMLType.XSD_INT, ParameterMode.IN);
// 设置被调用方法的返回值类型
call.setReturnType(XMLType.SOAP_VECTOR);
//设置方法中参数的值
Object[] paramValues = new Object[]
{"user","200471zibo","eas","S03","L2",2};
// 给方法传递参数,并且调用方法
Object invoke = call.invoke(paramValues);
String result = invoke.toString();
System.out.println("result is " + result);
} catch (Exception e) {
e.printStackTrace();
}
}
评论