# ws_eas_lib
**Repository Path**: penglee/ws_eas_lib
## Basic Information
- **Project Name**: ws_eas_lib
- **Description**: 金蝶EAS对外web services核心开发包
- **Primary Language**: Java
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 1
- **Created**: 2022-02-27
- **Last Updated**: 2022-10-13
## Categories & Tags
**Categories**: Uncategorized
**Tags**: 金蝶EAS对外webservices接口依赖核心包
## README
# ws_eas_lib
#### 介绍
这个项目是金蝶EAS接口的wsdl及文件包,方便第三方系统调用和开发,全部wsdl文件基于金蝶EAS 7.5版本打包,maven直接引入开发
#### 软件架构
软件架构说明
#### 安装教程
1. 下载源码后maven直接编译
```java
mvn clean install -Dmaven.test.skip=true
```
2. 在你的项目中maven直接引用
```java
com.ikeyleap.kingdee.ws
ws-eas-core
7.5-SNAPSHOT
```
#### 使用说明
1. 测试代码
```java
public final static String HTTP = "http";
public final static String SERVER_SUFFIX_URL = "/ormrpc/services";
public final static String SLN_NAME = "eas";
public final static String LANGUAGE = "l2";
@SneakyThrows
public WSContext login(String host, String user, String passwd, String dbcode, int dbtype) {
// ----------------------登录-----------------------------------
URL endpoint = URLUtil.url(host + "/EASLogin");
EASLoginProxy proxy = new EASLoginProxyServiceLocator().getEASLogin(endpoint);
WSContext ctx = proxy.login(user, passwd, "eas", dbcode, "l2", dbtype);
return ctx;
}
public static void main(String[] args) {
String url = UrlBuilder.create()
.setScheme("http")
.setHost("192.168.2.203").setPort(6888)
.addPath("/ormrpc/services")
.build();
Console.log(login(url, "user", "kduser", "75demo", 0).getSessionId());
}
```
2. 关于Version版本的wsdl文件有问题,可以直接采用hutool工具调用
```java
package kingdee;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.net.url.UrlBuilder;
import cn.hutool.http.webservice.SoapClient;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import java.util.Map;
public class WSEASVersionUtil {
public static String getVersion(String ip, int port) {
String url = UrlBuilder.create()
.setScheme("http")
.setHost(ip).setPort(port)
.addPath("/ormrpc/services")
.build();
Map heads = MapUtil.newHashMap();
heads.put("SOAPAction", "");
// 新建客户端
SoapClient client = SoapClient.create(url + "/Version?WSDL")
.addHeaders(heads)
// 设置要请求的方法,此接口方法前缀为web,传入对应的命名空间
.setMethod("axis:getVersion", "http://axis.apache.org")
// 设置参数,此处自动添加方法的前缀:web
;
// 发送请求,参数true表示返回一个格式化后的XML内容
// 返回内容为XML字符串,可以配合XmlUtil解析这个响应
JSONObject jo = JSONUtil.xmlToJson(client.send());
String version = jo.getJSONObject("soapenv:Envelope").getJSONObject("soapenv:Body").getJSONObject("ns1:getVersionResponse").getJSONObject("getVersionReturn").getStr("content");
return version;
}
public static void main(String[] args) {
getVersion("192.168.2.203", 6888);
}
}
```
3. 全部测试模块放在untitled工程中。有需求在将其推送到maven库。