我的Java类有一个构造函数,如
public Authenticator(String username, String applicationId, String zz, String yy, String zz,
String vv,Long cc) {
..
}
我在mule中启动这个构造函数如下。
<java:new doc:name="Authenticator" doc:id="b63fe250"
class="org.xxx" constructor="Authenticator(String,String,String,String,String,String,Long)"
target="authenticator">
<java:args ><![CDATA[#[output application/java
---
{
arg0 : p('zz') ,
arg1:vars.'vv',
arg2:'xx',
arg3:'aa',
arg4:vars.'zz',
arg5:'zz',
arg6:vars.nonce as Long
}]]]></java:args>
</java:new>
这里我得到; Unable to resolve reference of Long. at 10 : 10" 评估表达式。"output applicationjava
如何定义变量 蹊跷 作为 长 在mule中?
Dataweave不对基元类型进行操作。它对类进行操作。然后,它试图使用data sense将它们转换为基元类型。试着使用Number,但使用类Long.它应该像这样。
{
arg0 : p('zz') ,
arg1:vars.'vv',
arg2:'xx',
arg3:'aa',
arg4:vars.'zz',
arg5:'zz',
arg6:vars.nonce as Number {class: "java.lang.Long"}
}
请看这里的更多例子 https:/simpleflatservice.commule4ValuesAsJavaLong.html。