I have a question. I tried to call a Method Example "VectorAdd" which has two Argument from Vector complex type/structure. It is found at United Automation Test Server. How can I get or reach encodingId for a complex type Method Argument (in this case Vector) in order to use econdingId metadata when create ExtensionObject and to be passed as encoded Argument before method call. For example to use it here:
public static ExtensionObject encodeDefaultBinary(
SerializationContext context,
Object object,
NodeId encodingId
) throws UaSerializationException {
return encode(
context,
object,
encodingId,
OpcUaDefaultBinaryEncoding.getInstance()
);
}
I used the following SDK Classes:
UaMethodNode method = new UaMethodNode(opcUaClient, methodId);
Argument[] inArg = method.getInputArguments().get();
And in this way I get DataType NodeId using f.e. inArg[0].getDataType(). But how can I reach its binary encodingId? So I would like to pass Vectors with own value structure based binary schema. I did not find really an easy way
Kevin, I found some answer from you here:
|
| Eclipse Milo: How to call method which takes a customDataType as argument?The CustomDataType the method requires:
<UADataType NodeId="ns=1;i=3010" BrowseName="1:ScanSettings">
<DisplayN... |
|
|
But it is too old. Now we have Milo 4.0 release..where we have huge changes in API..
I will be really appreciate of your input.
Thank you in advance,
Stoyan