java - 如何将Java对象传递给mule中的Java函数
问题描述
我正在尝试在 mule 中调用 java 函数。我将有效负载转换为 Object 并将其传递给函数。创建的 Java 对象的名称是req。方法 validate 接受类型为 Example 的 Java 对象
public HashMap<String, String> validate(Example req) {.......}
示例类如下所示:
Class Example{
String key1;
String key2;
String key3;
}
XML 配置如下所示:
<java:new constructor="Example(java.lang.String,java.lang.String,java.lang.String)" doc:name="New Example" doc:id="6a1d5c8c-a1f0-446e-ab49-99a21fbbf4b9" class="Entities.Example" target="req">
<java:args ><![CDATA[#[{key1 :payload.key1,key2: payload.key2, key3:payload.key3}]]]></java:args>
</java:new>
<java:invoke doc:name="Invoke" doc:id="dd5f6534-06c8-4f4d-b3aa-c634a629898e" class="Implementations.ValidationServiceImpl" instance="#[vars.validator]" method="validate(Entities.Example)">
<java:args ><![CDATA[#[vars.req]]]></java:args>
</java:invoke>
我不知道为什么它没有将java对象作为一个整体传递。
解决方案
请尝试一下,看看。如果它适合你,请告诉我。在这种情况下,我们需要改进 mule 文档
<java:args >#[{req: vars.req}]</java:args>
推荐阅读
- c# - 如何绑定来自不同表的下拉菜单
- c - 如何在c中对双指针进行字母排序?
- android - Mapbox - LostLocationEngine 解析失败
- vb.net - 在单独的表格上验证许可证密钥?
- spring-boot - 当没有给出跟踪参数时,Spring Boot 2 包括 Stacktrace
- wpf - 如何将启动目录设置为 xaml 中的图像
- java - 如果在Java中为null,如何调用为参数分配新值的方法?
- python - Lemur RankLib 在训练时返回代码 1
- java - 无法通过 Eclipse 插件访问 java 类
- swift - 如何使用 JSONDecoder 根据订单键获取排序数据?