错误信息
当收到交易的结果以后,若交易执行不正确,可以跟进错误码去定位错误原因。
ErrorCode:MychainBaseResult
中errorCode
字段用来表示交易发送或者执行错误的原因。- 当发送的请求是交易相关的内容时,可根据交易的返回值字段中获得关于交易执行错误更详细的错误码。以部署合约为例:
MychainBaseResult<ReplyTransactionReceipt> result = sdk.getContractService()
.deployContract(
DeployContractRequest.build(adminAccount.getIdentity(),
Utils.getIdentityByName(testContractId,env), contractCode, VMTypeEnum.EVM,
contractParameters, BigInteger.ZERO, params));
assertTrue(result.isSuccess());
assertEquals(0, result.getData().getTransactionReceipt().getResult());
result.getData().getTransactionReceipt().getResult()
为 0 代表交易执行成功,反之代表交易执行失败,可以通过result
的值从MychainErrorCodeEnum
中查找错误原因。result.isSuccess()
可以作为交易是否发送成功的标志。若交易发送失败,可通过result.getErrorCode()
获取错误码。