2020-08-16 13:22发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
您好,我有一个带有wsdl的外部系统,用于包括多个Web服务。
SAP ERP中已有一个服务使用者代理,已用于通过SOAMANAGER直接通信。
现在应该在系统之间设置CPI。
这只能通过CPI的一个IFLOW来完成吗?
您好 BodoKörner,请在下面找到示例:在SoapUI中,我将Action设置为GoodAction 。
我在iFlow中打开了跟踪,以查看CPI中标头参数的确切名称是什么,结果证明它是SOAPAction。
我在运行时配置中将其定义为"允许的标头":
< br>
接下来在路由器中,我使用骆驼的简单表达式:
$ {header.SOAPAction} ='GoodAction'
我还创建了一个默认r
应该使用未处理的SOAP操作处理所有请求。
问候, Bartosz
您好 BodoKörner
似乎是收件人返回的错误消息。 您能否打开iFlow的跟踪并检查传递给接收方的消息的内容,然后尝试使用SoapUI将其发布? 您要将SoapAction传递给接收器适配器吗?问候, Bartosz
您好 BodoKörner,请查看将附件从SAP C4C复制到SAP S/4的标准iFlow。 从SAP Business Suite附件复制 在该iFlow中,基于特定条件,单个操作Web服务(异步)被路由到S/4中的多个Web服务。 理论上,您可以按照自己的方式进行操作-所有操作都将直接定向到单个iFlow,而路由器组件会将请求路由到相应的端点。 致谢, Bartosz
我很高兴它能正常工作。 不客气:-)
您好 BartoszZiólkowski ,
感谢这个好主意。 我不必通过有效负载中的标签(如ObjectTypeCode)来进行路由,而是通过标头中的soap操作来进行路由。 似乎无法在路由规则中读取。 示例有效载荷为:
sap语言:D soapaction:"呼叫" sap-srt_id:20200608/133641/v1.00_final_6.40/005056A75E7D1EEAAAAF8A38260EE240 sap-passport:xyz 连接:close > Content-Length:2212 Content-Type:text/xml; charset = utf-8接受:text/xml 接受编码:gzip 接受语言:de -----:---- 主机:192.168.XX.YX: 82 用户代理:SAP NetWeaver应用服务器(1.0; 740) <?xml版本=" 1.0"编码=" utf-16"?> http://schemas.xmlsoap.org/soap/envelope/"> http://www.sap.com/webas/712/soap/features/runtime/metering/"> SAhttp://www.sap.com/webas/712/soap/features/runtime/metering/"> SA> 0000000http://www.sap.com/webas/712/soap/features/runtime/metering/"> 0000000> FED_810http://www.sap.com/webas/712/soap/features/runtime/metering/"> FED_810> http://192.168.XX.YY:82/VTS/WShttp://schemas.xmlsoap.org/ws/2004/08/addressing"> http://192.168.XX.YY:82/VTS/WS> http://schemas.xmlsoap.org/ws/2004/08/addressing"> http://schemas.xmlsoap .org/ws/2004/08/addressing/role/anonymous> http://schemas.xmlsoap.org/ws/2004/08/addressing "> http://schemas.xmlsoap .org/ws/2004/08/addressing/role/anonymous> http://schemas.xmlsoap.org/ws/2004/08/addressing "> http://schemas.xmlsoap .org/ws/2004/08/addressing/role/anonymous> http://schemas.xmlsoap.org/ws/2004/08/addressing"> http://localhost:82/VTS/WS/Call uuid:005056a7-5e7d-1eea-aaaf-8a38260ec240http://schemas.xmlsoap.org/ws/2004/08/addressing"> uuid:005056a7-5e7d-1eea-aaaf-8a38260ec240>
http://www.tourenserver.de/" xmlns:prx =" urn: sap.com :proxy:FED:/1SAI/TASA963DE11D041CC65C0DB:740"> 07-00-FE_4 -1 ...
此致
Bodo
您好, BartoszZiólkowski,现在开始 反应正确。 但是现在发送过程失败,并出现以下错误:"错误详细信息org.apache.cxf.binding.soap.SoapFault:读取XMLStreamReader时出错:接收到事件DTD,而不是START_ELEMENT或END_ELEMENT。 ]:[1,14],原因:com.ctc.wstx.exc.WstxParsingException:在[row,col {unknown-source}]处接收到事件DTD,而不是START_ELEMENT或END_ELEMENT:[1,14]" p>
嗨, BartoszZiólkowski,对不起,这是我的错 ,则请求网址错误。更改后,一切正常。最重要的提示是允许的标头。 SOAP Action。感谢您的帮助。 BodoKörner FLS
最多设置5个标签!
您好 BodoKörner,
请在下面找到示例:
在SoapUI中,我将Action设置为GoodAction 。
我在iFlow中打开了跟踪,以查看CPI中标头参数的确切名称是什么,结果证明它是SOAPAction。
我在运行时配置中将其定义为"允许的标头":
< br>
接下来在路由器中,我使用骆驼的简单表达式:
我还创建了一个默认r
应该使用未处理的SOAP操作处理所有请求。
问候,
Bartosz
您好 BodoKörner
似乎是收件人返回的错误消息。 您能否打开iFlow的跟踪并检查传递给接收方的消息的内容,然后尝试使用SoapUI将其发布?
您要将SoapAction传递给接收器适配器吗?
问候,
Bartosz
您好 BodoKörner,
请查看将附件从SAP C4C复制到SAP S/4的标准iFlow。
从SAP Business Suite附件复制
在该iFlow中,基于特定条件,单个操作Web服务(异步)被路由到S/4中的多个Web服务。
理论上,您可以按照自己的方式进行操作-所有操作都将直接定向到单个iFlow,而路由器组件会将请求路由到相应的端点。
致谢,
Bartosz
我很高兴它能正常工作。
不客气:-)
您好 BartoszZiólkowski ,
感谢这个好主意。 我不必通过有效负载中的标签(如ObjectTypeCode)来进行路由,而是通过标头中的soap操作来进行路由。 似乎无法在路由规则中读取。
示例有效载荷为:
sap语言:D
soapaction:"呼叫"
sap-srt_id:20200608/133641/v1.00_final_6.40/005056A75E7D1EEAAAAF8A38260EE240sap-passport:xyz
连接:close
> Content-Length:2212
Content-Type:text/xml;
charset = utf-8接受:text/xml
接受编码:gzip
接受语言:de -----:----
主机:192.168.XX.YX: 82
用户代理:SAP NetWeaver应用服务器(1.0; 740)
<?xml版本=" 1.0"编码=" utf-16"?>
http://schemas.xmlsoap.org/soap/envelope/">
http://www.sap.com/webas/712/soap/features/runtime/metering/">
SAhttp://www.sap.com/webas/712/soap/features/runtime/metering/"> SA> 0000000http://www.sap.com/webas/712/soap/features/runtime/metering/"> 0000000>
FED_810http://www.sap.com/webas/712/soap/features/runtime/metering/"> FED_810>
http://192.168.XX.YY:82/VTS/WShttp://schemas.xmlsoap.org/ws/2004/08/addressing"> http://192.168.XX.YY:82/VTS/WS> http://schemas.xmlsoap.org/ws/2004/08/addressing"> http://schemas.xmlsoap .org/ws/2004/08/addressing/role/anonymous> http://schemas.xmlsoap.org/ws/2004/08/addressing "> http://schemas.xmlsoap .org/ws/2004/08/addressing/role/anonymous> http://schemas.xmlsoap.org/ws/2004/08/addressing "> http://schemas.xmlsoap .org/ws/2004/08/addressing/role/anonymous>
http://schemas.xmlsoap.org/ws/2004/08/addressing">
http://localhost:82/VTS/WS/Call
uuid:005056a7-5e7d-1eea-aaaf-8a38260ec240http://schemas.xmlsoap.org/ws/2004/08/addressing"> uuid:005056a7-5e7d-1eea-aaaf-8a38260ec240>
http://www.tourenserver.de/" xmlns:prx =" urn: sap.com :proxy:FED:/1SAI/TASA963DE11D041CC65C0DB:740">
此致
Bodo
您好, BartoszZiólkowski,
现在开始 反应正确。 但是现在发送过程失败,并出现以下错误:
"错误详细信息org.apache.cxf.binding.soap.SoapFault:读取XMLStreamReader时出错:接收到事件DTD,而不是START_ELEMENT或END_ELEMENT。 ]:[1,14],原因:com.ctc.wstx.exc.WstxParsingException:在[row,col {unknown-source}]处接收到事件DTD,而不是START_ELEMENT或END_ELEMENT:[1,14]" p>
嗨, BartoszZiólkowski,
对不起,这是我的错 ,则请求网址错误。
更改后,一切正常。
最重要的提示是允许的标头。 SOAP Action。
感谢您的帮助。
BodoKörner
FLS
一周热门 更多>