使用GraalVM从javascript向java函数传递变量参数

使用GraalVM从javascript向java函数传递变量参数,javascript,java,node.js,corda,graalvm,Javascript,Java,Node.js,Corda,Graalvm,我试图调用Corda RPC调用中可用的函数,该函数接受2个参数: starttracketflowdynamic(logicType:Class,vararg-args:Any?打包在JAR中 对该函数的调用是从Javascript上下文中进行的(使用GraalVM实现),我想调用该函数,并将从请求对象(例如,来自RESTAPI)获得的参数传递给它 例如: 如果请求包含数组[::InitiatorA,iouValue], 我想打电话给StartTrackFlowDynamic,比如: star

我试图调用Corda RPC调用中可用的函数,该函数接受2个参数:
starttracketflowdynamic(logicType:Class,vararg-args:Any?
打包在JAR中

对该函数的调用是从Javascript上下文中进行的(使用GraalVM实现),我想调用该函数,并将从请求对象(例如,来自RESTAPI)获得的参数传递给它

例如: 如果请求包含数组
[::InitiatorA,iouValue]
, 我想打电话给StartTrackFlowDynamic,比如:
starttrackdflowdynamic(::InitiatorA,iouValue)

如果请求包含数组
[::InitiatorB、abc、xyz]
我想打电话给StartTrackFlowDynamic,比如:
starttrackdflowdynamic(::InitiatorB,abc,xyz)

如果请求包含数组
[::InitiatorC]
我想打电话给StartTrackFlowDynamic,比如:
starttrackdflowdynamic(::InitiatorC)

TLDR:我希望将其作为通用API,而不是为每个不同的流调用重新编写。 我希望能够将来自请求对象的动态数量的参数传递到此函数,而不是硬编码固定数量的参数,并在参数数量发生变化时进行更新

我想要复制的行为的示例:

var func=函数(){
log(arguments.length);
for(var i=0;ifunc.apply(null,['::InitiatorA',abc',xyz'])
它似乎可以使用以下JavaScript语法

var argsArray = ['::InitiatorA', 'abc', 'xyz']
startTrackedFlowDynamic(...argsArray)

我建议在示例中使用
console.log
而不是
alert
——这样就不那么烦人了