问题标签 [web3-java]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Web3j:在合约上写操作总是抛出“java.lang.ArrayIndexOutOfBoundsException”
读取操作成功。写入返回以下错误:
我正在使用以下代码:
你能告诉我,我做错了什么吗?有错误吗?
android - Web3j:SocketTimeoutException:连接超时
我尝试使用 Web3j Android 连接到我的本地 Geth 客户端,但收到 SocketTimeoutException: connect timed out
使用启动 Geth 节点
geth --rpc --rpcaddr <my_ip> --rpcport <port>
尝试通过连接
Web3j web3 = Web3jFactory.build(new ttpService("http://my_ip:port"));
Geth 节点和我的 android 设备在同一个局域网上并共享同一个互联网。
任何帮助深表感谢。
java - 发送事务异步 | 无法解决方法“executeTransactionAsync”
我正在尝试使用 Web3j 库将交易发送到以太坊区块链,我收到一个错误,我必须使用异步发送它。当我使用 Async 发送它时,我收到一个错误,指出该函数不存在。我正在使用 Android Studio、Java 和 Web3j 库。
调用executeTransactionAsync
方法的一部分时web3.abi.datatypes.Function
,我收到一条错误消息,提示找不到该方法。我发现这意味着executeTransactionAsync
Web3j 库中不存在该方法。但是,Web3j 文档说要使用该方法。我正在使用最新版本的 Web3j,即 3.1.1。
如果我删除异步所以方法是executeTransaction
,我得到一个错误,需要通过异步发送事务。
有没有办法可以通过 Realm 或其他方式发送此交易?或者也许我使用错了 Web3j,我需要以另一种方式使用它?
发送交易的代码:
blockchain - Web3j:购买代币
如果我的区块链上有 ERC20 合约,并且用户想要购买代币,如下所示:
- 用户给出他们想要购买的代币数量
- 将弹出一个信息框,向用户显示他们将支付多少以太币以及剩余余额
- 确认后,应显示余额中的代币数量
要获得代币,我必须调用智能合约中的一个方法,如下所示。obtainTok(BigInteger weiValue)
在这种情况下使用 web3j 计算 weiValue 的公式是什么?
编辑 由于该库没有Javadocs,因此对于初学者来说,参数并不是很清楚。
这里的地址是代表钱包地址还是用户地址?
java - 如何将 web3j 库加载到 sbt 项目?
我想将 web3j 加载到在 Intellj IDE 中运行并基于 play 框架的 sbt 项目中。我试图添加
build.sbt
但我得到了错误。有任何想法吗?
transactions - Web3j如何获取交易状态
我正在使用 web3j 来查询以太坊区块链。现在我想检查一笔交易是被挖掘还是刚刚发送到网络。我怎样才能做到这一点?
java - Web3j:如何获取以太坊交易信息(Java 不是 JS)
我刚刚开始使用 Web3j,遇到了一些基本问题。
我已经成功地弄清楚了如何获取 EthBlock 并检索其中的所有信息。我想查看块中的交易列表,但我不知道如何。
我可以打电话
我应该能够查看此列表并获取有关每笔交易的信息。但是我似乎可以对 TransactionResult 做的只是将它转换为非常无用的 TransactionHash。我想要的是一个可以从中提取大量信息的 TransactionObject。
我如何获得真实的交易数据?
另一方面:有什么理由为什么似乎没有任何 Web3j JavaDoc?
java - 在 Web3j 以太坊交易中设置十六进制编码的数据字段
我正在编写一个 Web3j 应用程序,我想执行资金转移并将一个短文本字符串放在交易的十六进制编码数据字段中。我已成功转移资金,但似乎没有设置这些额外数据的参数。我该怎么做呢?
一旦这个工作,我相信我可以通过查看我的字符串
(当然,这必须正确解码)这是正确的吗?
android - 安装 Web3j CLI 工具
这个问题可能看起来有点微不足道,但我似乎找不到如何完成它。我正在尝试安装 web3j CLI 工具,但我不确定如何安装。我已经从这里下载了最新版本的 zip 文件。我曾尝试使用 windows cmd 提示符进行安装,但我不确定要编写哪些命令。如果不应该使用 cmd 提示符安装,那么我应该使用什么?
任何帮助表示赞赏。非常感谢您提前。
java - 如何使用 web3j 从 android 应用程序调用智能合约方法
我想从 Android 应用程序调用智能合约方法。我在我的私有网络中使用 truffle 框架部署了智能合约。我还使用 web3j 命令为部署的智能合约创建了一个包装类。它在我的 Android 项目中创建了一个 .java 文件。
我想从我的 Android 应用程序中调用智能合约方法。这是我的代码:
我收到错误:
java.io.FileNotFoundException: /usr/local/Cellar/test3/keystore/UTC--2018-03-13T09-19-38.721370320Z--191a1be7c53236f916af5512329a5092f70fab59 : open failed: ENOENT (No such file or directory)
如何提供钱包地址以及如何将这些方法调用到我的 Android 应用程序中?