Eclipse Milo:方法是否支持参数数组?
Eclipse Milo: Does method support argument array?
OPCUA 服务器有一个只有一个输入参数的方法
例如
protected Variant[] invoke(InvocationContext invocationContext, Variant[] inputValues) {
logger.debug("Invoking sqrt() method of objectId={}", invocationContext.getObjectId());
double x = (double) inputValues[0].getValue();
double xSqrt = Math.sqrt(x);
return new Variant[]{new Variant(xSqrt)};
}
在OPCUA客户端,我可以用array int调用这个方法吗?例如[1,4,9,16,25]
CallMethodRequest request = new CallMethodRequest(
objectId,
methodId,
new Variant[]{new Variant(input)}
);
这里inputArguments是Variant数组,可以设置成[1,4,9,16,25]得到[1,2,3,4,5]吗?
不,这样不行。
不过,您可以在一个 CallRequest
内发送 5 CallMethodRequest
。
OPCUA 服务器有一个只有一个输入参数的方法 例如
protected Variant[] invoke(InvocationContext invocationContext, Variant[] inputValues) {
logger.debug("Invoking sqrt() method of objectId={}", invocationContext.getObjectId());
double x = (double) inputValues[0].getValue();
double xSqrt = Math.sqrt(x);
return new Variant[]{new Variant(xSqrt)};
}
在OPCUA客户端,我可以用array int调用这个方法吗?例如[1,4,9,16,25]
CallMethodRequest request = new CallMethodRequest(
objectId,
methodId,
new Variant[]{new Variant(input)}
);
这里inputArguments是Variant数组,可以设置成[1,4,9,16,25]得到[1,2,3,4,5]吗?
不,这样不行。
不过,您可以在一个 CallRequest
内发送 5 CallMethodRequest
。