Caver-Java를 이용해서 getTransactionReceipt으로 실패한 트랜잭션영수증의 에러메시지를 가져오고 싶습니다

안녕하세요.

caver-java 1.8.0을 사용하여 서비스를 운영하고 있는데
caver.rpc.klay.getTransactionReceipt(실패한 txHash)를 이용하여 실패원인 문구를 가져오고 싶습니다.

execution reverted : ERC20: transfer amount exceeds allowance
contract : contractAddress CALL

이 문구인데 "execution reverted ~ "이 부분을 에러메시지로 가져오려고 하는데 방법이 없을까요?

receiptData를 찾아보다가 getError().getMessage()를 봤는데 error이 null로 응답이 오는것을 봤습니다
error에는 어떤 정보가 담겨있나요?

안녕하세요.

getError().getMessage는 caver로 날린 JSON/RPC API 자체의 response에 error가 났을 경우 담겨옵니다.

질문자님께서 원하시는 문구를 가져올 방법은 debug_traceTransaction API를 통해서 가져올 수 있으나, debug namespace를 지원하는 provider를 사용하셔야할 것 같습니다.

감사합니다.

2개의 좋아요

@Kale

답변 감사합니다.

caver-java에서는 debug_traceTransaction 메소드를 제공하지 않는건지 문의드리려고 합니다.

caver-java에 있는 모든 인터페이스 부분을 확인해봤는데 없는거 같아 DOC문서를 찾아봤는데 caver-js부분만 찾았습니다

혹시 caver-java에서 debug_traceTransaction 메소드를 호출하는 예제가 있을까요??

안녕하세요.
caver는 debug namespace API는 지원하지 않습니다.

감사합니다.