首页
 > 开放接入中心 > 数据交换 > 接口说明 > 报文发送(webservice)

报文发送接口功能(WebService)

1、总体说明

组装报文后,调用平台交换服务进行发送操作。返回结果为true则表示发送成功;失败则返回错误信息和错误代码。

2、请求地址

测试地址:

#ssl.logink.org/cuteinfo/services/ExchangeTransportService?wsdl

生产地址:

1号  #exa.logink.org/cuteinfo/services/ExchangeTransportService?wsdl

3号  #exb.logink.org/cuteinfo/services/ExchangeTransportService?wsdl

3、函数说明:

函数名称:send

完整样式:USendResponse send(USendRequest sendReq)

参数说明

序号

参数属性

参数名称

中文名称

数据类型

说明

1

发送参数

sendReq

发送请求对象

USendRequest

参见下表发送参数

2

返回参数

USendResponse

接收请求对象

USendResponse

参见下表返回参数

发送参数

序号

英文名称

中文名称

约束

数据格式

说明

示例

 1 

Envelope

报文

1..1

XML标签

2

Header

报文头

1..1

XML标签

3

Security

安全信息

1..1

XML标签

4

UsernameToken

用户身份

1..1

XML标签

5

Username

用户名

1..1

string

用户物流交换代码

物流代码

6

UserTokenID

令牌

1..1

string

用户令牌

用户令牌

7

Body

报文体

1..1

XML标签

8

SendRequest

发送请求消息

1..1

XML标签

9

ToAddress

目标地址

1..n

string

多个目的地物代码以逗号分隔

物流代码1,物流代码2

10

ExchangeEvent

交换事件

1..n

XML标签

11

EventID(属性)

事件标识

1..1

String

交换事件的唯一标识

UUID

12

ActionType(属性)

操作类型

1..1

string

操作类型

操作类型列表

13

ExchangeDataPackage

交换数据包

1..1

XML标签

14

packageID(属性)

交换数据报标识

1..1

string

唯一标识一个数据交换包的ID,没有特殊情况可以与采用事件标识

UUID

15

transactionID(属性)

交易标识

1..1

string

唯一标识一次数据交换交易的ID,没有特殊情况可以与采用事件标识

UUID

16

createTime(属性)

创建时间

1..1

dateTime

数据包创建时间。

YYYY-MM-DD

HH:MM:SS

17

expireTime(属性)

失效时间

0..1

dateTime

交换数据包数据有效的时间。不指定该时间表示永久有效。

YYYY-MM-DD

HH:MM:SS

18

title(属性)

标题

1..1

string

交换数据包的描述性。

ExchangeDataPackageUnit

数据包单元

1..n

XML标签

目前不支持分包传输,以下各个属性的值需要填写

19

groupID(属性)

分组标识

1..1

string

在交换数据包中唯一标识一个分组的标识符。

可填写UUID

20

groupSize(属性)

分组大小

1..1

int

每个分组包的大小

1

21

sequenceInGroup(属性)

组内序号

1..1

int

分组包的序号

1

22

unitID(属性)

包单元ID

1..1

string

包单元ID

可填写UUID

23

source(属性)

数据来源

1..1

string

报文属性

xml stream

24

entityIDName(属性)

实体标识名

1..1

string

实体属性

XmlFile

25

entityDispName(属性)

实体显示名

0..1

string

实体名称

XmlFile

26

createDate(属性)

创建时间

1..1

datetime

创建时间

YYYY-MM-DD

HH:MM:SS

27

expireDate(属性)

失效时间

0..1

datetime

失效时间

YYYY-MM-DD

HH:MM:SS

28

DataFile

数据文件

0..1

XML标签

暂未用到

29

dataFileID(属性)

文件标识

1..1

string

文件ID

可填写UUID

30

fileName(属性)

文件名

1..1

string

文件名称

文件名称

31

dataFileFormat(属性)

文件格式

1..1

string

文件格式

XML

32

Base64EncodedData

嵌入式内容

1..1

base64Binary

经过Base64转换的业务报文

经过Base64转换的业务报文,详见根据操作类型的报文格式。可以同时有数据附件。

33

AttachmentData

数据附件

1..1

base64Binary

经过Base64编码的数据文件

附件

返回参数

序号

报文层次

英文名称

中文名称

约束

数据格式

说明

示例

 1 

1

Envelope

报文

1..1

XML标签

2

2

Body

报文体

1..1

XML标签

3

3

SendResponse

发送响应

1..1

XML标签

4

4

SendResult

发送结果

1..1

boolean

成功 True

失败 False

True

False

5

4

SendResults

发送结果集

0..1

XML标签

6

5

EventID

事件标识

1..1

String

交换事件的唯一标识

UUID

7

5

Result

发送结果

1..1

boolean

针对具体某个事件发送操作是否执行成功;

成功 True

失败 False

True

False

8

5

ToAddress

目标地址

1..1

String

数据事件发送的目的地址。

物流代码

9

4

GenericFault

异常信息

0..1

XML标签

10

5

Code

异常编码

1..1

String

异常的错误代码。

异常代码

11

5

ErrorMessage

异常信息

1..1

String

异常发生的原因的详细信息。

异常中文描述

4、参考样例

采用平台包接入样例:

// 读取配置文件
Properties properties = PropertiesUtils.PROPERTIES.getProperties("client_demo.properties");
  String targetURL = properties.getProperty("targetURL");
  String securityURL = properties.getProperty("securityURL");
IMessageTransporterDAO transporter = null;
  try {
      // 调用统一认证的令牌认证服务
      UserToken token = UserTokenUtils.getTicket(
      properties.getProperty("username"),
      properties.getProperty("password"),
      properties.getProperty("resourceId"),
      properties.getProperty("authURL"));
      System.out.println("tokenid:" + token.getTokenID());
     // 接下来需要设置目标地址,发送报文的内容,包括报文类型Actiontype和具体报文xml
      USendRequset sendReq = new USendRequset();
      sendReq.setToaddress(properties.getProperty("toaddress").split(","));
      // 设置待发送的业务报文
      String xml = getMessageToXML();
      sendReq.setSendRequestTypeXML("ZJWL_LOGINK_FAQ_InfoIssueRequest",xml);
      // 最后,调用平台提供的发送服务发送报文
      transporter = ITransportClientFactory.createMessageTransporter(token, targetURL);
      long start = System.currentTimeMillis();
      USendResponse response = transporter.send(sendReq);
       long end = System.currentTimeMillis();
       System.out.println("发送耗时:" + (end - start) + "毫秒,报文长度"+ xml.getBytes().length);
       if (response.isSendResult()) {
            System.out.println("send success");} else {
            // 错误的情况下,会返回异常代码以及异常信息。异常代码请参照《3.2 共建指导性文件:交换接入》中的异常代码信息
             System.out.println("send error");
             System.out.println(response.getGenericFault().getMessage());}
             System.out.println("");} catch (Exception e) {e.printStackTrace();}

自主开发请求报文样例:

<?xml version="1.0" encoding="UTF-8"?>
    <SOAP-ENV:Envelope xmlns:SOAP-ENV=#schemas.xmlsoap.org/soap/envelope/
xmlns:SOAP-ENC=#schemas.xmlsoap.org/soap/encoding/
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance
xmlns:xsd=http://www.w3.org/2001/XMLSchema
xmlns:ns6=#schemas.egs.org.cn/businessdata
xmlns:ns4=#schema.egs.org.cn/exchange/cdt
xmlns:ns5=#schema.egs.org.cn/exchange/edf
xmlns:ns1=#service.egs.org.cn/exchange/exchangetransport
xmlns:ns3=#schema.egs.org.cn/exchange/exchangetransport
xmlns:wsse="#docs.oasis-open.org/wss/2004/01/oasis-200401-wss- wssecurity-secext- 1.0.xsd">
      <SOAP-ENV:Header>
          <wsse:Security>
              <wsse:UsernameToken>
                   <wsse:Username>618</wsse:Username>
                   <wsse:UserTokenID>ticket:40289e8f3454333301345e99a9443565</wsse:UserTokenID>
              </wsse:UsernameToken>
          </wsse:Security>
       </SOAP-ENV:Header>
   <SOAP-ENV:Body>
    <ns3:SendRequest xsi:type="ns3:SendRequestType">
        <ns3:ToAddress>GGXX00001</ns3:ToAddress>
        <ns3:ExchangeEvent xsi:type="ns3:ExchangeEventType" ActionType="ZJWL_LOGINK_GGXX_InfoPublishIssueRequest"EventID="7947A1F5-48F5-4211-862D-998E1F347694">
	        <ns5:ExchangeDataPackage title="sendpackage" expireTime="2011-12-31T03:11:00Z"createTime="2011-12-21T03:11:00Z" transactionID="1CC44783-8526-457c-BF46-C84FC01AC38C"
        packageID="CF2DC408-040C-453e-A215-9A55FCCC9BCD" xsi:type="ns5:ExchangeDataPackageType">
		        <ns5:ExchangeDataPackageUnit expireDate="2011-12-31T03:11:00Z" createDate="2011-12-21T03:11:00Z"
              entityDispName="unkown" entityIDName="unkown" source="xml stream"
              unitID="{11B06B82-7223-4e33-8A7B-06893645C7F2}" sequenceInGroup="1" groupSize="1"
              groupID="{01504AFE-016B-44fb-9C47-A9EBB1FB9507}" xsi:type="ns5:ExchangeDataPackageUnitType">
			         <ns5:DataFile dataFileFormat="XML" fileName="filenameaaa.xml" dataFileID="{360D4B72-CCBE-42f5-B4B9-52BA21426E30}" xsi:type="ns5:DataFileType">
                         <ns5:Base64EncodedData>PD94bWwgdmVyc2lvbj0iMS4wImVuY29kaW5nPSJVVEYtOCI/PiA8Um9vdD4gPEhlYWRlcj4gPE1lc3NhZ2VSZWZlcmVuY2VOdW1iZXI+ezBBOUJGMzE1LUIxRjItNDkxMi05NjYwLUQ0MUEyQjUyMDkyQX08L01lc3NhZ2VSZWZlcmVuY2VOdW1iZXI+IDxEb2N1bWVudE5hbWU+5LyB5Lia5Yqo5oCB5LiK5LygPC9Eb2N1bWVudE5hbWU+IDxEb2N1bWVudFZlcnNpb25OdW1iZXI+VjMuMDwvRG9jdW1lbnRWZXJzaW9uTnVtYmVyPiA8U2VuZGVyQ29kZT42MTg8L1NlbmRlckNvZG
                         U+IDxNZXNzYWdlU2VuZGluZ0RhdGVUaW1lPjIwMTExMjIxIDExMTEwMDwvTWVzc2FnZVNlbmRpbmdEYXRlVGltZT4gPC9IZWFkZXI+ICA8Qm9keT4gPEluZm9UaXRsZT7kvIHkuJrliqjmgIHkuIrkvKDkuLvpopg8L0luZm9UaXRsZT4gPEZyZWVUZXh0PuiHqueUseaWh+acrOa1i+ivleaYr+WVijwvRnJlZVRleHQ+IDxMb2dpc3RpY3NFeGNoYW5nZUNvZGU+NjE4PC9Mb2dpc3RpY3NFeGNoYW5nZUNvZGU+IDxJc3N1ZURhdGVUaW1lPjIwMTExMjIxIDExMTEwMDwvSXNzdWVEYXRlVGltZT4gPENhdGVnb3J5SWQ+UTwvQ2F0ZWdvcnlJZD4gPC9Cb2R5PiA8L1Jvb3Q+
                         </ns5:Base64EncodedData>
                     </ns5:DataFile>
                 </ns5:ExchangeDataPackageUnit>
            </ns5:ExchangeDataPackage>
        </ns3:ExchangeEvent>
    </ns3:SendRequest>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

报文返回结果样例:

<soap:Envelope xmlns:soap="#schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
      <ns3:SendResponse>
           <ns3:SendResults>
                 <ns3:EventID>8a8184e2483f44d001483f44d02a0003</ns3:EventID>
                 <ns3:Result>true</ns3:Result>
                 <ns3:ToAddress>8643</ns3:ToAddress>
            </ns3:SendResults>
            <ns3:SendResult>true</ns3:SendResult>
       </ns3:SendResponse>
    </soap:Body>
</soap:Envelope>