HCI Groovy脚本错误

2020-09-24 07:17发布

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

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


专家们,

我是HCI的新手,正在测试IFLOW肥皂到货币转换器的肥皂

我正在尝试执行groovy脚本来替换即将出现的值,并且出现错误"脚本可能无法将xml消息传递给soap接收器,任何建议都是有帮助的

谢谢

iflow.jpg (153.5 kB)

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

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


专家们,

我是HCI的新手,正在测试IFLOW肥皂到货币转换器的肥皂

我正在尝试执行groovy脚本来替换即将出现的值,并且出现错误"脚本可能无法将xml消息传递给soap接收器,任何建议都是有帮助的

谢谢

iflow.jpg (153.5 kB)
付费偷看设置
发送
7条回答
打个大熊猫
1楼 · 2020-09-24 07:48.采纳回答

Gaurav,你好

这是一个警告。 请尝试部署iflow并让我们知道您是否遇到错误。

感谢和问候,

Praveen T

hengyuye
2楼-- · 2020-09-24 07:30

使用替换列表替换它

蓋茨
3楼-- · 2020-09-24 07:44

感谢您对其进行检查...。

下面是错误

在bean中处理交换ID-vsa [ref:scriptprocessor method:process]:StartTime = Fri Mar 02 03:56:18.031 UTC 2018 StopTime = Fri Mar 02 03:56:18.035 UTC 2018 ChildCount = 9错误= javax。 script.ScriptException:

org.codehaus.groovy.control.MultipleCompilationErrorsException:启动失败:script.groovy:18:期望'}',在第18行第16列找到了"。 ^ 1错误,原因:org.codehaus.groovy.control.MultipleCompilationErrorsException:启动失败:script.groovy:18:期望'}',发现''@第18行,第16列。 ^

谢谢

土豆飞人
4楼-- · 2020-09-24 07:27

嗨,Gaurav,

在"返回消息"之后可能会注意到"}"丢失了

请进行更改,然后编译代码。

希望有帮助!

感谢和问候,

Praveen T

打个大熊猫
5楼-- · 2020-09-24 07:40

在脚本的结尾添加"}",我的朋友。

Baoming ROSE
6楼-- · 2020-09-24 07:51

我忘记更新您了

我已经添加了右括号,但仍然收到其他错误

1错误,原因:org.codehaus.groovy.control.MultipleCompilationErrorsException:启动失败:script.groovy:4:您定义了没有主体的方法。 尝试添加主体,或将其声明为抽象。 第4行,第1列:文件:script.groovy @第4行,第1列。public java.lang.Object getBody()^

脚本:

导入com.sap.gateway.ip.core.customdev.util.Message;

import java.util.HashMap;

public java.lang.Object getBody()def消息processData(消息消息){

//Body def body = Message.getBody(); message.setBody(body +"修改了主体");

def body_xml = Message.getBody(java.lang.String); def input_xml = body_xml.replace(" test"," US");

Message.setBody(input_xml);

返回消息; }

谢谢

Violet凡
7楼-- · 2020-09-24 07:33

嗨,Gaurav,

我在您的代码中注意到的几个问题:

  • 方法getBody()已声明,但未实现-方法定义看起来多余,可以删除,
  • 必须使用传递给方法processData()的消息对象的相应实例执行脚本中的消息对象的
  • 操作,因为这些方法是实例,而不是静态方法-因此,您不能以静态方式引用消息( 在上面的脚本中,您尝试尝试获取和设置引用Message类方法的消息主体,就好像它们将是静态方法一样,而不是针对脚本中可用的,可通过以下方法访问的Message类的特定实例来调用它们: 可变消息)。

在下面查看调整后的代码:

 def消息processData(消息){
 def msgBodyOriginal = message.getBody(java.lang.String)作为String
 def msgBodyModified = msgBodyOriginal.replace('test','US')
 message.setBody(msgBodyModified)
 返回讯息
 } 

此致

Vadim

一周热门 更多>