Error when deploying a smart contract with w3.eth.contract(): "The method eth_sendTransaction is not supported"

Viewed 3597

I'm using Web3.py, and a permissioned Hyperledger Besu network.

When trying to use w3.eth.contract(...) method to deploy a smart contract into the network, I get the following error:

ValueError: {'code': -32604, 'message': 'The method eth_sendTransaction is not supported. Use eth_sendRawTransaction to send a signed transaction to Besu.'}

I suppose that eth_sendTransaction is being called when executing w3.eth.contract(...). Is there any other way of deploying a contract without ending up with this problem?

2 Answers
Related