Java 如何使用HLF中的事件通知客户端块提交和/或事务状态?
我正在处理一个需要通知任何给定区块链交易状态的客户。为此,我正在学习如何利用事件来实现这一目标。我试图参考HLF1.4(已找到)中有关事件的官方文档,但指向SDK文档的链接已失效。我还发现,但提供的链接都死了 然后我遇到了Fabric网关实现(前面提到过),我发现它构成了这个问题的基础Java 如何使用HLF中的事件通知客户端块提交和/或事务状态?,java,hyperledger-fabric,blockchain,event-listener,hyperledger-chaincode,Java,Hyperledger Fabric,Blockchain,Event Listener,Hyperledger Chaincode,我正在处理一个需要通知任何给定区块链交易状态的客户。为此,我正在学习如何利用事件来实现这一目标。我试图参考HLF1.4(已找到)中有关事件的官方文档,但指向SDK文档的链接已失效。我还发现,但提供的链接都死了 然后我遇到了Fabric网关实现(前面提到过),我发现它构成了这个问题的基础 我当前的临时代码如下所示: BlockEventSourceFactory factory = BlockEventSourceFactory.getInstance(); BlockEventSource b
我当前的临时代码如下所示:
BlockEventSourceFactory factory = BlockEventSourceFactory.getInstance();
BlockEventSource blockEventSource = factory.newBlockEventSource(channel);
blockEventSource.addBlockListener(blockEvent -> {
System.out.println("[zzzzz] Block number is " + blockEvent.getBlockNumber());
});
channel.sendTransaction(responses);
blockEventSource.close();
在我的Java链码中,我调用stub.setEvent(“myEventName”,null)
来设置事件
问题是,我没有看到我的调试输出,我也不确定我做错了什么,所以如果有人能告诉我正确的参考资料,和/或帮助我以某种方式使上述代码工作,我将不胜感激
(如果有任何其他信息我应该提供,请通过评论让我知道,我将在这里添加它们。)要使用高级网关SDK,您需要首先创建网关对象,然后从中获取网络对象(使用示例代码作为开始)。从网络对象中,可以调用传入使用者函数。然后,当您在合同对象上调用submitTransaction时,您的侦听器应该被调用
就测试而言,您最好查看场景测试代码,并查看使用示例。要使用高级网关SDK,您需要首先创建网关对象,然后从中获取网络对象(使用示例代码作为开始)。从网络对象中,可以调用传入使用者函数。然后,当您在合同对象上调用submitTransaction时,您的侦听器应该被调用 在测试方面,您最好查看场景测试代码,以及使用示例 我试图参考HLF1.4中关于事件的官方文档(在这里找到),但是SDK文档的链接已经失效。我也发现了这个问题,但提供的链接也都死了 我登记了。我发现有三个关于事件的教程可以帮助你解决问题。他们是,而且是