Trying to invoke:
QueryCriteria linearStateCriteria = new QueryCriteria.LinearStateQueryCriteria(null,null,Arrays.asList(externalId),Vault.StateStatus.UNCONSUMED);
connection.getProxy().vaultQueryByCriteria(linearStateCriteria,SomeState.class);
getting exception:
Serialization failed direction="Serialize", type="net.corda.core.node.services.vault.QueryCriteria$LinearStateQueryCriteria", msg="Defined getter for parameter contractStateTypes returns type java.util.Set<java.lang.Class<? extends net.corda.core.contracts.ContractState>> yet underlying type is java.util.Set<java.lang.Class<? extends net.corda.core.contracts.ContractState>>", ClassChain="java.util.List<*> -> net.corda.core.node.services.vault.QueryCriteria$LinearStateQueryCriteria"
Looks like bug in serialization in client rpc. If somebody faced this issue or this is a known bug please advice.
Thanks.
val serialisedArguments = (arguments?.toList() ?: emptyList()).serialize(context = serializationContextWithObservableContext)
– shpitc