LogicHttpService 类主要用于向服务端逻辑流发送请求,然后把请求结果封装为 Dataset 对象
调用 LogicHttpService 的 send() 方法可以向服务端发送请求。 LogicHttpService 的 logicFlow 属性应该设置为接受请求的逻辑流全称,可以在 EOS Studio 里选中要接收请求的逻辑流 à 右键选择“复制全名”,得到的即为逻辑流全名,如图所示:(附件1)
目前 SDP 的客户端和服务端通过 XML 字符串交换数据, XML 字符串必须符合一定的格式,主要包括 3 种格式,下面举例说明
假设如图所示的一个逻辑流,其输入参数 ”book” 与输出参数 ”books” 都是 ”Book 数据实体 ” 类型的数组, Book 数据实体只包含一个 title 属性。(附件2)
因为输入参数名称是“ book ”,所以发送给逻辑流的 XML 字符串必须以“ book ”作为根标签,其子标签为 Book 数据实体的属性名称。假设要发送两条 book 记录给逻辑流,可以采用层次结构,如下:
代码
|
var book1: XML =
var
book2: XML =
logicHttpService.addDataEntity(book1);
logicHttpService.addDataEntity(book2);
|
也可以采用平铺结构,即使用 Xpath 语法(注意: Xpath 语法的数组索引从 1 开始计算),如下:
代码
|
logicHttpService.addParam( "book[1]/title" , "book1" );
logicHttpService.addParam(
"book[2]/title"
,
"book2"
);
|
或者同时采用两种结构发送,如下:
代码
|
var book1: XML =
logicHttpService.addDataEntity(book1);
logicHttpService.addParam(
"book[2]/title"
,
"book2"
);
|