云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

专属服务器_虚拟主机服务_便宜的

小七 141 0

有很多博客(例如这里)解释了如何使用自定义错误处理,但它们似乎集中在接收方。本博客是一个示例,说明如何将响应映射中定义的有效负载与非200 HTTP状态码一起发回

注意:SAP知识库2259871意味着发送方适配器上应该有一个"使用消息有效负载"选项,但在我们的环境PI 7.5 SP 11中,我们没有这个选项,因此本博客解释了如何仍然获取有效负载响应有效载荷发送到消费者….

场景:休息到SOAP(模拟服务)

ESR对象

使用者(发送者)

服务接口:

请求消息类型

注:-As这是一个RESTful GET调用元素"dummy"未使用

响应消息类型

目标(接收器)

服务接口

请求消息类型

响应消息类型

操作映射

请求

响应

故障

注意:-此已经做了,比购返利,但我们不感兴趣的错误处理在这个博客!

消息映射

请求

注:我们使用自定义项检索其余ASMA'id',并将id字段设置为该值。ASMA将设置在REST发送者适配器(在REST资源选项卡下)

UDF

Response

响应映射将检查来自目标(模拟服务)系统的传入"Success\U Flag",如果它不等于"Y",则创建错误结构

然后将"Error\U Code"和"Error\U Desc"字段设置为更多有用的价值观。在现实世界中,什么是云服务器,我们可能会有基于目标系统返回的更复杂的逻辑。

集成生成器

适配器

其余发送器

发送器适配器被定义为同步("尽力而为"),并将请求/响应处理为JSON。

注意:-此是将ASMA"id"设置为URL中传递的id的位置请求,然后用于ESR中的请求映射。

注:-该消息类型基于GET操作,但将来我们可以根据操作(POST、PUT等)设置不同的消息类型

注意:-他们发送方的关键定义是,物联网的应用,我们在"Success\u Flag"字段中检查"N"的值,然后使用占位符{message\u result}是消息映射后响应消息的有效负载。

SOAP接收器

SOAP接收器被定向到在我的笔记本电脑上运行的SOAPUI模拟服务。

ICO

ICO使用适配器和ESR OM将其组合在一起!

运行场景

模拟服务

SOAPUI通过从ESR导入SI\ U Mock\ U服务的WSDL为目标(接收器)配置了模拟服务。

注意:端口和路径与PI中SOAP接收器中使用的值匹配

我创建了两个模拟响应,返利是什么,将依次调用(一个接一个)

"Success"模拟响应将"Success\u Flag"设置为"Y",并设置名称字段(为简单起见,硬编码!)Id字段使用脚本从请求消息传回Id。

模拟响应"失败"将"成功标志"设置为"N",并设置名称字段(为简单起见,硬编码!)Id字段使用脚本从请求消息传回Id。

调用PI REST服务

第一个调用是到PI端点,客户Id为876333–屏幕截图显示调用了模拟服务,折扣返利,我们返回了客户名称。第二个屏幕截图显示HTP状态码是200!

下一个呼叫(客户Id'3333')将触发"失败"模拟响应,因为模拟服务只是按顺序响应下一个模拟响应(我们定义了两个:成功和失败)。第二个屏幕显示HTP状态码设置为404,正如我们在REST发送方适配器的错误处理中定义的那样!

功能提醒功能提醒!

在测试中我注意到,当我们连续快速使用相同的客户Id调用端点时,PI中有一些缓存。如果这与SOAPUI模拟服务或PI本身有关,我不是100%。

在我定义了两个模拟响应的测试场景中,如果我连续两次触发同一客户的请求,那么CAL工作