2017-08-03 2 views
0

Ich habe ein Problem basierend auf M13 getroffen. Bitte hilf mir, es zu beheben. Haben Sie eine allgemeine Möglichkeit, alle Klassen in die Whitelist aufzunehmen?

i verwendet customCriteria wie folgt:

val customCriteria1 = QueryCriteria.VaultCustomQueryCriteria(builder{ LegalContractSchemaV1.PersistentLegalContractState::contractTitle.equal(test.legalEntity)}) 

dies meine Whitelist ist.

class AppPlugin: CordaPluginRegistry() { 

    override fun customizeSerialization(custom: SerializationCustomization): Boolean { 
     custom.apply { 
      // OpenGamma classes. 
      addToWhitelist(LegalContractSchemaV1.PersistentLegalContractState::class.java) 
      addToWhitelist(QueryCriteria.VaultCustomQueryCriteria::class.java) 
      // addToWhitelist(net.corda.core.node.services.vault. 

     } 
     return true 
    } 

    override val requiredSchemas: Set<MappedSchema> get() = setOf(com.legalcontract.schema.LegalContractSchemaV1) 
} 

logs wie nachstehend:
Exception in thread "main" com.esotericsoftware.kryo.KryoException: Klasse com.legalcontract.client.LegalContractClientRPC $ $ getLegalSearchEntities customCriteria1 1 $ 1 $ die Weiße Liste nicht annotiert oder auf, so kann nicht in Serialisierung verwendet werden Serialisierungsablaufverfolgung: Eigenschaft (net.corda.core.node.services.vault.Column $ Kotlin) Spalte (net.corda.core.node.services.vault.CriteriaExpression $ ColumnPredicateExpression) Ausdruck (net.corda.core.node.services.vault.QueryCriteria $ VaultCustomQueryCriteria) b (net.corda.core.node.services.vault.QueryCriteria $ AndComposition) bei net.corda.core.serialization.CordaClassResolver.checkClass (CordaClassResolver.kt: 65) bei net.corda.core.serialization.CordaClassResolver.getRegistration (CordaClassResolver.kt: 35) bei com.esotericsoftware.kryo. Kryo.getRegistration (Kryo.java:488) bei net.corda.nodeapi.RPCKryo.getRegistration (RPCStructures.kt: 74) bei com.esotericsoftware.kryo.util.DefaultClassResolver.writeClass (DefaultClassResolver.java:97) bei com.esotericsoftware.kryo.Kryo.writeClass (Kryo.java:540) bei com.esotericsoftware.kryo.serializers.ObjectField.write (ObjectField.java:76) bei com.esotericsoftware.kryo.serializers.CompatibleFieldSerializer.write (CompatibleFieldSerializer.java:66) bei com.esotericsoftware.kryo.Kr yo.writeObject (Kryo.java:575) unter com.esotericsoftware.kryo.serializers.ObjectField.write (ObjectField.java:80) unter com.esotericsoftware.kryo.serializers.CompatibleFieldSerializer.write (CompatibleFieldSerializer.java:66) bei com.esotericsoftware.kryo.Kryo.writeObject (Kryo.java:575) bei com.esotericsoftware.kryo.serializers.ObjectField.write (ObjectField.java:80) bei com.esotericsoftware.kryo.serializers.CompatibleFieldSerializer. schreibe (CompatibleFieldSerializer.java:66) unter com.esotericsoftware.kryo.Kryo.writeObject (Kryo.java:575) unter com.esotericsoftware.kryo.serializers.ObjectField.write (ObjectField.java:80) at com. esotericsoftware.kryo.serializers.CompatibleFieldSerializer.write (CompatibleFieldSerializer.java:66) bei com.esotericsoftware.kryo.kriteo.writeClassAndObject (Kryo.java:651) bei com.esotericsoftware.kryo.serializers.CollectionSerializer.write (CollectionSerializer.java:100) bei com.esotericsoftware.kryo.serializers.CollectionSerializer. Schreibe (CollectionSerializer.java:40) bei com.esotericsoftware.kryo.Kryo.writeClassAndObject (Kryo.java:651) bei net.corda.core.serialization.KryoKt.serialize (Kryo.kt: 169) at net. corda.core.serialization.KryoKt $ serialize $ 1.execute (Kryo.kt: 151) unter net.corda.core.serialization.KryoKt $ serialize $ 1.execute (Kryo.kt) unter com.esotericsoftware.kryo.pool. KryoPoolQueueImpl.run (KryoPoolQueueImpl.java:61) bei net.corda.core.serialization.KryoKt.serialize (Kryo.kt: 151) at net.c orda.core.serialization.KryoKt.serialize $ default (Kryo.kt: 150) unter net.corda.nodeapi.RPCApi $ ClientToServer $ RpcRequest.writeToClientMessage (RPCApi.kt: 103) unter net.corda.client.rpc. internal.RPCClientProxyHandler.invoke (RPCClientProxyHandler.kt: 197) bei com.sun.proxy $ Proxy21.vaultQueryByCriteria (Unknown Source) bei com.legalcontract.client.LegalContractClientRPC.getLegalSearchEntities (LegalContractClientRPC.kt. 106) bei com.legalcontract.client.LegalContractClientRPC.main (LegalContractClientRPC.kt: 68) bei com.legalcontract.client.LegalContractClientRPCKt.main (LegalContractClientRPC.kt: 39)

Antwort

0

Leider ist dies ein bekannter Fehler mit M13, wobei die weißen Liste nicht korrekt für RPC geladen wird. M14, das heute veröffentlicht werden soll, wird dieses Problem angehen.

Verwandte Themen