J'ai suivi toutes les étapes de Hello World 1
https://docs.corda.net/hello-world-template.html
https://github.com/corda/cordapp-template-kotlin
mais lors de l'exécution de cette commande j'ai rencontré cette erreur:
[ERROR] 20: 14: 21 + 0200 [Node thread-1] proxies.ExceptionSerialisingRpcOpsProxy.log - Erreur lors de l'appel RPC [errorCode = ue63ey, moreInformationAt = https://errors.corda.net/OS/4.0/ue63ey] {actor_id = internalShell, actor_owning_identity = O = PartyA, L = Londres, C = GB, actor_store_id = NODE_CONFIG, fiber-id = 10000001, flow-id = ef20094f-ecea-4004-b6dc-e687f88fdce9, invocation_id = c783d17e-1a70-4ec9-93ca-cb08714afac7, invocation_testamp = 14-03 18.869Z, origin = internalShell, session_id = e7787152-785d-47fc-a5a6-e8893a730942, session_timestamp = 2019-03-12T18: 14: 02.935Z, thread-id = 221, tx_id = E38133ECBB005885B0DFDFD501A2149
Je ne comprends pas la signification de l'erreur
comment résoudre cette erreur?
4 Réponses :
Cette erreur signifie que la véritable exception peut être trouvée dans les journaux des nœuds.
Nous ajusterons probablement cela dans une prochaine version afin que toutes les exceptions soient renvoyées au client RPC au lieu de quelques-unes seulement.
[Thread-19 (ActiveMQ-client-global-threads)] custom.ThrowableSerializer.fromProxy - Exception inattendue de-sérialisation pouvant être lancée: net.corda.core.contracts.TransactionVerificationException $ TransactionRequiredContractUnspecifiedException. Conversion en CordaRuntimeException. [errorCode = 39z9vh, moreInformationAt = https://errors.corda.net/OS/4.0/ 39z9vh] java.lang.reflect.InvocationTargetException: null | | Causé par: java.lang.IllegalArgumentException: le paramètre spécifié comme non-null est null: méthode net.corda.core.contracts.TransactionVerificationException $ TransactionRequiredContractUnspecifiedException., État du paramètre à net.corda.core.contracts.TransactionVerificationException $ TransactionRequiredContractUnspecifiedException. (TransactionVerificationException.kt) ~ [corda-core-4.0.jar :?]
J'ai le même problème. Le rapport des journaux de nœuds:
net.corda.core.contracts.TransactionVerificationException $ TransactionRequiredContractUnspecifiedException: L'état de la classe com.template.IOUState n'a pas de propriété spécifiée Contrat. Ajoutez l'annotation @BelongsToContract à cette classe pour assurez-vous qu'il ne peut être groupé que dans un TransactionState avec le contrat correct.
L'ajout de l'annotation à la classe IOUState a résolu le problème.
Il a été résolu en ajoutant l'annotation @BelongsToContract sur la classe IOUState. Merci à Gerferra pour son aide :)
@BelongsToContract(TemplateContract.class)
public class IOUState implements ContractState {
...
}