解决使用web3j时出现 Error: only replay-protected (EIP-155) transactions allowed over RPC

ValueError: {‘code’: -32000, ‘message’: ‘only replay-protected (EIP-155) transactions allowed over RPC’}

使用 以太坊自建网关节点进行调用时出现 only replay-protected (EIP-155) transactions allowed over RPC 的错误,如果使用的是infura的则不会。
解决方案:
在代码中原来使用的是

TransactionEncoder.signMessage(rawTransaction, credentials) 

指明当前节点所在的chainId即可正常调用,替换为下面这个方法

TransactionEncoder.signMessage(rawTransaction, chainId, credentials)