Skip to content

fisco3.X 查询桥接合约报错 #625

@luoshicai

Description

@luoshicai

lsc@A100-R760:~/25Spring/WeCross/wecross-networks/routers-payment/127.0.0.1-8250-25500$ java -cp 'conf/:lib/:plugin/' com.webank.wecross.stub.bcos.normal.preparation.HubContractDeployment getAddress chains/bcos3
Failed, please check contract or account. Exception details:
java.lang.ClassCastException: class java.lang.String cannot be cast to class java.lang.Long (java.lang.String and java.lang.Long are in module java.base of loader 'bootstrap')
at com.webank.wecross.stub.bcos.normal.config.BCOSStubConfigParser.getChainConfig(BCOSStubConfigParser.java:82)
at com.webank.wecross.stub.bcos.normal.config.BCOSStubConfigParser.loadConfig(BCOSStubConfigParser.java:52)
at com.webank.wecross.stub.bcos.normal.preparation.HubContract.(HubContract.java:55)
at com.webank.wecross.stub.bcos.normal.preparation.HubContractDeployment.getAddress(HubContractDeployment.java:134)
at com.webank.wecross.stub.bcos.normal.preparation.HubContractDeployment.handle2Args(HubContractDeployment.java:96)
at com.webank.wecross.stub.bcos.normal.preparation.HubContractDeployment.main(HubContractDeployment.java:69)

似乎是因为:
WeCross 的 chainId 和 groupId 字段在 BCOS 2.x 版本的时候是数字,比如:
chainId = 1
groupId = 1
但是 BCOS 3.x 改成了 字符串(group0、chain0),而 WeCross 还是按数字处理 —— 代码里直接 cast 成 Long 类型,所以报错:

ClassCastException: java.lang.String cannot be cast to java.lang.Long

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions