HCI同步拆分

2020-09-26 13:48发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我对HCI还是很陌生,并且正在尝试以下情形:
我有来自发送方的同步REST/JSON调用,该调用包含以下结构:

{
"消息":{
" postId":[" 1"," 2"," 3"]
}
}

现在,我想按postId拆分传入的消息,然后调用
https://jsonplaceholder.typicode.com/posts/{postId }用于提供的每个postId。 这些都是同步的GET调用,这些调用提供了JSON内容,例如:

 {
   " userId":1
   " id":1
   " title":"禁止动用公积金,除了最优投保外,",
   "身体":"很快就接受保全,因此必须立即接受保全,不动产,不动产,不动产,不动产"
 } 

在对发件人的同步响应中,我想收集所有响应消息,并将它们作为组合的JSON提供回发件人。

我尝试了以下方法:

HTTPS发送器-> JSON到XML转换器-> xpath的通用拆分器//postId->内容修饰符,它将//postId写入标头变量-> XML到JSON转换器-> HTTPS接收器通道,该通道使用来自 postId用于在接收方进行呼叫。

我在同步响应中得到的是请求数据的XML转换,例如:

<?xml version ='1.0'encoding ='UTF-8'?> 1 2 3

您能给我一个提示我做错了什么或如何实现我的方案吗?

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我对HCI还是很陌生,并且正在尝试以下情形:
我有来自发送方的同步REST/JSON调用,该调用包含以下结构:

{
"消息":{
" postId":[" 1"," 2"," 3"]
}
}

现在,我想按postId拆分传入的消息,然后调用
https://jsonplaceholder.typicode.com/posts/{postId }用于提供的每个postId。 这些都是同步的GET调用,这些调用提供了JSON内容,例如:

 {
   " userId":1
   " id":1
   " title":"禁止动用公积金,除了最优投保外,",
   "身体":"很快就接受保全,因此必须立即接受保全,不动产,不动产,不动产,不动产"
 } 

在对发件人的同步响应中,我想收集所有响应消息,并将它们作为组合的JSON提供回发件人。

我尝试了以下方法:

HTTPS发送器-> JSON到XML转换器-> xpath的通用拆分器//postId->内容修饰符,它将//postId写入标头变量-> XML到JSON转换器-> HTTPS接收器通道,该通道使用来自 postId用于在接收方进行呼叫。

我在同步响应中得到的是请求数据的XML转换,例如:

<?xml version ='1.0'encoding ='UTF-8'?> 1 2 3

您能给我一个提示我做错了什么或如何实现我的方案吗?

付费偷看设置
发送
5条回答
葫芦娃快救爷爷
1楼-- · 2020-09-26 14:37

彼得,你好,

您可以尝试以下方法:

主要整合过程:

HTTPS发送器->开始-> JSON到XML转换器->处理对本地集成过程的调用(右键单击并选择循环过程-然后配置循环条件)-> XML到JSON转换器->结束消息

本地集成流程:

对接收者的请求-答复步骤->内容修改器

此致

Prasanna

歪着头看世界
2楼-- · 2020-09-26 14:32

嗨Prasanna,

感谢您的回复! 我已经尝试了您的解决方案,但对我来说,它在循环过程调用失败并显示以下消息:

org.apache.camel.TypeConversionException:从类型:java.lang.String到所需类型:org.w3c.dom.Document的类型转换期间发生错误,其值[未记录正文]由于org.xml .sax.SAXParseException; lineNumber:1; columnNumber:1; 序言中不允许内容。原因:org.xml.sax.SAXParseException; lineNumber:1; columnNumber:1; 序言中不允许包含内容。

我只在本地集成过程中添加了一个内容修饰符,以便从Xpath获取//postId并将其存储到标头变量postId中,以便在动态URL的请求-回复通道中检索它。/p>

我在本地集成过程中没有使用第二个内容修饰符。 为了将所有响应附加到主体中,然后通过XML to JSON转换器运行之前,是否需要这样做? 这会导致上面的错误吗?

这是过程模型:

任何提示将不胜感激!

N-Moskvin
3楼-- · 2020-09-26 14:34

你好彼得,

从我这边走下来的几分钱可能对您有帮助。

此致

Sriprasad Shivaram Bhat

spaceman01
4楼-- · 2020-09-26 14:35

你好彼得,

问题不在您的分离器中,根据我的观察,它是在您请求回复后发生的。

我认为您的 http://jsonplaceholder.typicode.com/posts/$ {header.postId }调用的是JSON格式。

在收集之前,您可能需要从JSON转换为XML(如果要使用传入格式= XML(相同格式)),也可以使用纯文本(可能需要编写脚本来执行转换后收集),这可能会 从转型的角度来看会有点复杂。

此致

Sriprasad Shivaram Bhat

CJones
5楼-- · 2020-09-26 14:27

嗨,彼得,

您能否发布iflow的图像,并且这种情况还需要拆分后的请求-答复和联接-收集模式。

此致

邯郸

一周热门 更多>