点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
由于第三方正在将其Web服务从一台服务器迁移到另一台服务器,也从SOAP 1.1迁移到SOAP 1.2,因此我们向第三方发送了一个同步的SOAP消息。
为此,我们已经修改了SOAP接收器适配器以使用" HTTP(轴)"的传输协议,以允许我们使用SOAP 1.2(最初,它在PI中使用了标准的SOAP HTTP-SOAP 1.1设置)。
但是,在测试中,第三方注意到我们正在发送两个信封/正文/标题元素。 这就是他们所看到的(注意" soapenv"和" env"元素)...
<?xml version =" 1.0"?>...
在我们的PI系统中的SXMB_MONI中,我们在有效负载主文档中看到了离开PI的情况(注意只是" env"元素)...
<?xml version =" 1.0"?>...
这是由Java Mapping创建的,并且是当前Web服务当前使用的(使用标准SOAP适配器和HTTP SOAP 1.1)。
因此,以某种方式,我们认为离开PI的XML被包裹在其他Envelope,Header和Body中了吗? (即" soapenv"元素似乎已添加到我们的" env"元素中)。
我们的通讯渠道("参数"标签)的设置如下:
- 适配器类型:SOAP
- 发件人/收件人:收件人
- 传输协议:HTTP(轴)
- 消息协议:轴
- 适配器引擎:中央适配器引擎
- 连接参数URL:第三方Web服务的https地址
- 身份验证:无
- 出站参数
- SOAP版本:1.2
- SOAP操作:第三方Web服务所需的操作
- 封装格式:MIME
- XI参数
- 保留XI标头:未选中
- 保留附件:已打勾
- 有效负载提取:SOAP Body Child
"通信通道"的"标识符"和"模块"选项卡为默认设置-因此此处未进行任何更改。
我们尝试更改XI Parameters设置以查看是否有区别,并且发现如果将Payload Extraction设置为" SOAP Envelope",则第三方只会看到一个Envelope,Header和Body,如图所示 此处:
<?xml version =" 1.0"?>...
最初,我们认为这已解决了该问题,但是在仔细检查Envelope标签时,我们注意到,这似乎是在消息离开SXMB_MONI之后以某种方式添加的信封(即其" soapenv"元素, 我们需要" env"元素)。
有没有其他人看到过这个并且知道如何解决?
非常感谢,
Gareth
加雷斯,
根据您的描述,您需要应用SAP注意 2616936 -轴适配器 返回完整的SOAP信封,而不是SOAP Body Child元素。
最诚挚的问候,
伴侣
感谢您的配合,伴侣。
我检查了SAP Note 2616936,并说该行为是SAP Note 2590102的副作用。但是,我不认为我们应用了SAP Note 2590102,因为它引用的是7.31 SP017至SP023,而我们有7.31 SP014。
因此,如果我们尚未将SAP Note 2590102应用于系统,SAP Note 2616936是否可以解决我们遇到的问题?
非常感谢,
盖尔斯
一周热门 更多>