CZT
2023-11-06 b4e8dc09c2af2a331b477904f9d7b205a7224890
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
package com.fzzy.push.gd2020.v2;
 
import com.fzzy.api.data.AuthToken;
import com.fzzy.api.entity.Api1101;
import com.fzzy.api.entity.ApiConfs;
import com.fzzy.push.gd2020.GDResult;
import com.fzzy.push.gd2020.GDUtils;
import com.fzzy.push.gd2020.InvokeResult;
import com.fzzy.push.gd2020.JaxbUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.cxf.endpoint.Client;
import org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory;
import org.apache.cxf.transport.http.HTTPConduit;
import org.apache.cxf.transports.http.configuration.HTTPClientPolicy;
 
import javax.xml.namespace.QName;
 
@Slf4j
public class FileServerWebService {
 
    public static FileServerWebService newInstance() {
        return new FileServerWebService();
    }
 
    /**
     * 附件-数据接口 -xml报文
     */
    public String xml_fileServerWebService =
            "<?xml version=\"1.0\" encoding=\"utf8\"?><root><row id=\"cfgl_warehousing_company\"><zhgxsj desc=\"最后更新时间\" type=\"varchar\" length=\"19\" requir=\"必填\">{zhgxsj}</zhgxsj><qylxr desc=\"企业联系人\" type=\"varchar\" length=\"20\" requir=\"必填\">{qylxr}</qylxr><qylx desc=\"企业类型\" type=\"varchar\" length=\"2\" requir=\"必填\">{qylx}</qylx><yzbm desc=\"邮政编码\" type=\"varchar\" length=\"6\" requir=\"必填\">{yzbm}</yzbm><bgdh desc=\"办公电话\" type=\"varchar\" length=\"50\" requir=\"必填\">{bgdh}</bgdh><czbz desc=\"操作标志\" type=\"varchar\" length=\"1\" requir=\"必填\">{czbz}</czbz><kqs desc=\"库区数\" type=\"int\" length=\"12\" requir=\"必填\">{kqs}</kqs><cfs desc=\"仓房数\" type=\"int\" length=\"12\" requir=\"必填\">{cfs}</cfs><ygs desc=\"油罐数\" type=\"int\" length=\"12\" requir=\"必填\">{ygs}</ygs><zcrq desc=\"注册日期\" type=\"varchar\" length=\"10\" requir=\"必填\">{zcrq}</zcrq><qymc desc=\"企业名称\" type=\"varchar\" length=\"50\" requir=\"必填\">{qymc}</qymc><qytyshxydm desc=\"企业统一社会信用代码\" type=\"varchar\" length=\"18\" requir=\"必填\">{qytyshxydm}</qytyshxydm><fddbr desc=\"法定代表人\" type=\"varchar\" length=\"50\" requir=\"必填\">{fddbr}</fddbr><qyjd desc=\"企业经度\" type=\"decimal\" length=\"12\" requir=\"必填\">{qyjd}</qyjd><qywd desc=\"企业纬度\" type=\"decimal\" length=\"12\" requir=\"必填\">{qywd}</qywd><qyxzqymc desc=\"企业行政区域名称\" type=\"varchar\" length=\"50\" requir=\"必填\">{qyxzqymc}</qyxzqymc><qyxzqhdm desc=\"企业行政区划代码\" type=\"int\" length=\"12\" requir=\"必填\">{qyxzqhdm}</qyxzqhdm><qyssqx desc=\"企业所属区县\" type=\"int\" length=\"12\" requir=\"必填\">{qyssqx}</qyssqx><qydm desc=\"企业代码\" type=\"varchar\" length=\"50\" requir=\"必填\">{qydm}</qydm><frsjh desc=\"法人手机号\" type=\"char\" length=\"11\" requir=\"必填\">{frsjh}</frsjh><zczb desc=\"注册资本\" type=\"decimal\" length=\"12\" requir=\"可选\">{zczb}</zczb><zcze desc=\"资产总额\" type=\"decimal\" length=\"12\" requir=\"可选\">{zcze}</zcze><frsfzh desc=\"法人身份证号\" type=\"decimal\" length=\"12\" requir=\"可选\">{frsfzh}</frsfzh><yydz desc=\"注册地址\" type=\"varchar\" length=\"256\" requir=\"可选\">{yydz}</yydz><dzyx desc=\"电子邮箱\" type=\"varchar\" length=\"50\" requir=\"可选\">{dzyx}</dzyx><czhm desc=\"传真号码\" type=\"varchar\" length=\"32\" requir=\"可选\">{czhm}</czhm></row></root>\n";
 
 
    /**
     * @Desc: 附件-数据接口
     */
    public static InvokeResult getWs(String url, String method, String nameSpace, Object[] obj) {
        InvokeResult invokeResult = new InvokeResult();
 
        JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance();
        Client client = dcf.createClient(url);
        // 设置超时begin
        HTTPConduit conduit = (HTTPConduit) client.getConduit();
        HTTPClientPolicy policy = new HTTPClientPolicy();
        policy.setAllowChunking(false);
        policy.setAutoRedirect(true);
        policy.setConnectionTimeout(36000 * 5); // 连接超时时间
        policy.setReceiveTimeout(36000 * 5);// 请求超时时间.
        conduit.setClient(policy);
        // 设置超时时间end
        QName name = new QName(nameSpace, method);
        Object[] objects;
        try {
 
            objects = client.invoke(name, obj);
//            result = objects[0].toString();
        } catch (Exception e) {
            e.printStackTrace();
        }
        try {
            client.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
 
        return invokeResult;
    }
 
}