问题描述
-
错误描述:account xxx not found (链账户地址找不到)
-
该问题一般常见于 SDK 创建离线链账户后,用该链账户发起交易提示 account xxx not found 。
创建离线账户:
KeyManager km=KeyManagerFactory.createDefault();
String mnemonic=km.add();
System.out.println("助记词:"+mnemonic);
System.out.println("地址:"+km.getCurrentKeyInfo().getAddress());
报错示例
io.grpc.StatusRuntimeException: NOT_FOUND: account xxx not found
解决方案:
1、对该链账户进行充值;
2、对该链账户进行代付授权;
3、满足以上任意一点,即可使用该链账户作为交易发起者发起交易。
- 正确操作流程举例:
-
创建一个测试网的链账户地址。
-
申请 issueDenom 授权和能量值充值。
-
使用该测试网的链账户地址进行交易。
-
产生错误场景
-
使用 opb-sdk 离线创建链账户后,直接使用该链账户进行操作。如:
地址1 发行 nft1 到地址2,地址2 转让 nft1 给地址3 时,提示NOT_FOUND: account 地址2 not found。原因:该问题产生可能是未进行代付授权,地址2 转让 地址3 需要支付 gas 可以用 地址1 给 地址2 进行代付授权,这样 地址2 转让的时候可以指定 地址1 进行支付。