0

我在 java 类中有一个实例方法,(MyUtils.getDesc(String)) 我必须从 dataweave 脚本调用这个方法。

我写了下面的代码,但它不起作用:

var obj = MyUtils::new()

test:obj.getDesc('testme').

有人能帮我吗?这里有什么问题?

4

1 回答 1

2

您应该通过 Java 模块及其操作来实例化您的对象。然后,您将能够使用 Java 模块调用函数通过 DataWeave 调用您的方法(假设您的实例存储在名为“myUtils”的 Mule 变量中):

Java::invoke('your.package.MyUtils', 'getDesc(String)', vars.myUtils, {arg0: 'testme'})

如果您处理的是静态方法,则可以直接使用 DataWeave 调用它,如下所示:

java!your::package::MyUtils::getDesc('testme')
于 2019-12-19T22:18:29.073 回答