2020-09-21 11:33发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
专家们,
我们有一个场景,我们通过REST服务(POST操作)发布一些数据,我们在SAP HCI中使用HTTP适配器,有时字段以错误的方式发送,并且出现400错误 服务器需要验证有效负载,这是正确的,但是我们希望从HTTP适配器获取主体响应错误,然后将其发送回ECC。
有人已经这样做了吗?
关于如何做到这一点的任何想法?
谢谢
您好,布鲁诺。
我认为您必须编写脚本以进行响应,然后将其发送回SAP ERP。
https://uacp2.hana.ondemand.com/viewer/368c481cd6954bdd5d
下面是SAP HELP中提供的示例脚本
import com.sap.gateway.ip.core.customdev.util.Message; def消息processData(消息消息){ //获取iflow属性的映射 def map = message.getProperties(); //获取异常java类实例 def ex = map.get(" CamelExceptionCaught"); 如果(ex!= null) { //http适配器抛出org.apache.camel.component.ahc.AhcOperationFailedException的实例 如果(ex.getClass()。getCanonicalName()。equals(" org.apache.camel.component.ahc.AhcOperationFailedException")) { //将http错误响应另存为消息附件 def messageLog = messageLogFactory.getMessageLog(message); messageLog.addAttachmentAsString(" http.ResponseBody",ex.getResponseBody()," text/plain"); //将http错误响应复制到iflow的属性 message.setProperty(" http.ResponseBody",ex.getResponseBody()); //将http错误响应复制到消息正文 message.setBody(ex.getResponseBody()); //将http错误代码的值(即500)复制到属性中 message.setProperty(" http.StatusCode",ex.getStatusCode()); //将http错误文本的值(即"内部服务器错误")复制到属性中 message.setProperty(" http.StatusText",ex.getStatusText()); } } 返回消息; }
您可以在Script本身中形成XML,或者在使用脚本中设置的属性对构建XML进行脚本编写之后,可以使用内容修饰符。
注意 p>
Sriprasad Shivaram Bhat
感谢分享,这也让我很开心。
你摇滚!
最多设置5个标签!
您好,布鲁诺。
我认为您必须编写脚本以进行响应,然后将其发送回SAP ERP。
https://uacp2.hana.ondemand.com/viewer/368c481cd6954bdd5d
下面是SAP HELP中提供的示例脚本
您可以在Script本身中形成XML,或者在使用脚本中设置的属性对构建XML进行脚本编写之后,可以使用内容修饰符。
注意 p>
Sriprasad Shivaram Bhat
感谢分享,这也让我很开心。
你摇滚!
一周热门 更多>