コントラクトで web3j を使用していくつかの関数を呼び出そうとしています。堅牢性ガイドに従って、このコントラクトの .abi と .bin を取得しました - https://etherscan.io/address/0x9dda40dabd849bbb087dcbcf0c5223ec5ffa0ad7#code。次に、web3j コマンドラインを使用して .java ファイル ラッパーを作成し、正しいディレクトリに出力しました。
すべてが機能しますが、これらの行は次のとおりです。
public static final Event FUNDSWITHDRAWN_EVENT = new Event("FundsWithdrawn",
Arrays.<TypeReference<?>>asList(new TypeReference<Address>() {}, new TypeReference<Uint256>() {}));
;
public static final Event FUNDSDEPOSITED_EVENT = new Event("FundsDeposited",
Arrays.<TypeReference<?>>asList(new TypeReference<Address>() {}, new TypeReference<Uint256>() {}));
;
public static final Event SERVERADDED_EVENT = new Event("ServerAdded",
Arrays.<TypeReference<?>>asList(new TypeReference<Uint256>() {}));
;
public static final Event SERVERREMOVED_EVENT = new Event("ServerRemoved",
Arrays.<TypeReference<?>>asList(new TypeReference<Uint256>() {}));
;
public static final Event GAMESTARTED_EVENT = new Event("GameStarted",
Arrays.<TypeReference<?>>asList(new TypeReference<Uint256>() {}, new TypeReference<DynamicArray<Address>>() {}));
;
public static final Event GAMEENDED_EVENT = new Event("GameEnded",
Arrays.<TypeReference<?>>asList(new TypeReference<Uint256>() {}, new TypeReference<Address>() {}, new TypeReference<Address>() {}, new TypeReference<Address>() {}));
;
エラーをスローします:
Event() in Event cannot be applied to:
Expected Parameters:
Actual Arguments:
name:
String
"ServerAdded"
indexedParameters:
List<TypeReference<?>>
Arrays...new TypeReference<Uint256>() {})
nonIndexedParameters:
List<TypeReference<?>>
そして、これらの2行:
public static final Event OWNERSHIPRENOUNCED_EVENT = new Event("OwnershipRenounced",
Arrays.<TypeReference<?>>asList(new TypeReference<Address>(true) {}));
;
public static final Event OWNERSHIPTRANSFERRED_EVENT = new Event("OwnershipTransferred",
Arrays.<TypeReference<?>>asList(new TypeReference<Address>(true) {}, new TypeReference<Address>(true) {}));
;
エラーを表示: TypeReference の TypeReference( ) を (boolean) に適用できません
私はコントラクトの作成者ではありませんが、web3js とメタマスクの実装では正しく機能します。これらのイベントはサーバーサイド用であるため、私が考えていることの1つは、それらを含める必要さえありますか? (ご覧のとおり、後で参照されますが).binファイルを使用すると、変更しないように強制されるのではないかと思いますか?とにかくこれは初めてなので、助けや指示をいただければ幸いです。