WeBankBlockchain/WeBASE

Webase部署合约时,构造器的bytes类型参数在界面无论填什么都提示错误

Opened this issue · 4 comments

Webase部署合约时,构造器的bytes类型参数在界面无论填什么都提示错误

合约函数的内容,输入的值可以贴上来看一下。bytes类似string格式,bytesN类型如byte2则需要使用十六进制的string,并参考提示补齐到对应长度,如bytes2为0x1234

合约函数的内容,输入的值可以贴上来看一下。bytes类似string格式,bytesN类型如byte2则需要使用十六进制的string,并参考提示补齐到对应长度,如bytes2为0x1234

这个是测试的实际界面:
image

版本信息:
链版本: 2.9.0 gm
兼容版本: 2.9.0
WeBASE版本: v1.5.4

了解了,我们复现了这个bug,在sdk中进行编码时,webase的参数格式错误。我们会在1.5.5版本中修复改问题。
如果急用的话,可以基于WeBASE-Front的dev分支的代码,单独gradle build 一个新的安装包,dev分支为beta版本,可以使用bytes类型的参数

该问题是由于fisco java-sdk中在部署合约时对bytes类型参数编码有问题。您也可以在构造函数中去除bytes参数,通过空白入参的constructor进行部署,然后通过一个setBytes(bytes memory n)方法设置bytes参数进去