方法1
package client;
import java.rmi.RemoteException;
import javax.xml.rpc.ServiceException;
import org.apache.axis.client.Stub;
import org.apache.axis.message.SOAPHeaderElement;
import _190._41._10._10.ormrpc.services.EASLogin.EASLoginProxy;
import _190._41._10._10.ormrpc.services.EASLogin.EASLoginProxyServiceLocator;
import _190._41._10._10.ormrpc.services.WSBaseDataSyncFacade.WSBaseDataSyncFacadeSrvProxy;
import _190._41._10._10.ormrpc.services.WSBaseDataSyncFacade.WSBaseDataSyncFacadeSrvProxyService;
import _190._41._10._10.ormrpc.services.WSBaseDataSyncFacade.WSBaseDataSyncFacadeSrvProxyServiceLocator;
public class Test {
private static String url = "http://10.10.41.190:6888";
private static String userName = "xiaoniujz";
private static String password = "xiaoniujz",dcName = "xiaoniu_0824";
private static String slnName = "eas";
private static String language = "l2";
private static int dbType = 2;
public static void main(String[] args) {
String value = getBaseData();
System.out.println(value);
}
public static String getBaseData() {
String value = "";
String sessionId = "";
EASLoginProxyServiceLocator loginLocator = new EASLoginProxyServiceLocator();
try {
EASLoginProxy loginProxy = loginLocator.getEASLogin();
System.out.println("------ 开始登录服务器 .... ");
WSContext context = loginProxy.login(userName, password, slnName, dcName, language, dbType);
sessionId = context.getSessionId();
if(sessionId!=null)
{
System.out.println("------ 登陆成功,SessionID:" + sessionId);
}else
{
value = "登陆失败";
return value;
}
} catch (ServiceException | RemoteException e) {
e.printStackTrace();
value = e.getMessage();
return value;
}
WSBaseDataSyncFacadeSrvProxyServiceLocator baseDataService = new WSBaseDataSyncFacadeSrvProxyServiceLocator();
baseDataService.setMaintainSession(true);
try {
WSBaseDataSyncFacadeSrvProxy baseDataProxy = baseDataService.getWSBaseDataSyncFacade();
((Stub)baseDataProxy).setHeader(new SOAPHeaderElement("http://login.webservice.bos.kingdee.com","SessionId", sessionId));
value = baseDataProxy.getBaseData("costcenter", "", "1", "1");
} catch (Exception e) {
e.printStackTrace();
value = e.getMessage();
}
return value;
}
}
方法2
package com.hhxh;
import java.rmi.RemoteException;
import javax.xml.namespace.QName;
import javax.xml.rpc.ServiceException;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import org.apache.axis.message.SOAPHeaderElement;
import org.json.JSONArray;
import org.json.JSONObject;
import com.hhxh.client.WSContext;
public class BaseDataSyncTest
{
private static String url = "http://10.10.41.190:6888";
private static String userName = "xiaoniujz";
private static String password = "xiaoniujz",dcName = "xiaoniu_0824";
private static String slnName = "eas";
private static String language = "l2";
private static int dbType = 2;
public static void main(String[] args) {
getBaseData();
}
public static void getBaseData()
{
try {
//1.
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(url+"/ormrpc/services/EASLogin?wsdl");//
call.setOperationName("login");//
call.setMaintainSession(false);
call.setReturnType(new QName("urn:client", "WSContext"));
call.setReturnClass(WSContext.class);//
call.setReturnQName(new QName("", "loginReturn"));
//
WSContext result = (WSContext)call.invoke(new Object[]{userName,password,slnName,dcName, language,dbType});
String sessionId = result.getSessionId();
if(sessionId==null || sessionId.trim().length()==0)
{
System.out.println("登陆失败");
// return;
}
System.out.println(""+sessionId);
//2.
call.setTargetEndpointAddress(url+"/ormrpc/services/WSBaseDataSyncFacade?wsdl");//
call.setMaintainSession(false);
call.addHeader(new SOAPHeaderElement("http://login.webservice.bos.kingdee.com","SessionId", sessionId));
call.addParameter("type", org.apache.axis.encoding.XMLType.XSD_DATE, javax.xml.rpc.ParameterMode.IN);//
call.addParameter("startDate", org.apache.axis.encoding.XMLType.XSD_DATE, javax.xml.rpc.ParameterMode.IN);//
call.addParameter("rows", org.apache.axis.encoding.XMLType.XSD_DATE, javax.xml.rpc.ParameterMode.IN);//
call.addParameter("page", org.apache.axis.encoding.XMLType.XSD_DATE, javax.xml.rpc.ParameterMode.IN);//
call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);//
call.setOperationName("getBaseData");//
String rows = "10";
String page = "1";
String startDate = "";
String type = "costcenter";
String result1 = (String)call.invoke(new Object[]{type,startDate,rows,page});
System.out.println(result1);
} catch (Exception e) {
e.printStackTrace();
}
}
}