关于教程的问题:使用IBM Blockchain VS Code扩展功能增强和添加对商业票据智能合约的查询

时间:2019-06-12 07:20:56

标签: hyperledger-fabric blockchain

我正在跟踪有关向IBM的商业票据智能合约添加查询的教程,而同伴则遇到问题。

我尝试杀死docker映像,然后重新启动它,但对我而言不起作用。

请注意,我已经完成了三个教程中的第1个(教程:使用IBM Blockchain VS Code扩展来运行商业票据智能合约),而我被困在第2个教程(教程:Enhance并将查询添加到商业票据智能合约中) (在IBM区块链VS代码扩展中),请执行 Transaction#1。使用Isabella @ MagnetoCorp ->命令执行问题事务:节点issue.js

在下面的图片中,您可以找到运行该命令后显示给我的错误。

Error displayed

更新问题:

docker ps -a命令如下所示:


CONTAINER ID        IMAGE                                                                                                                                 COMMAND                  CREATED             STATUS              PORTS                                            NAMES
2a3e4e48075e        fabricvscodelocalfabric-peer0.org1.example.com-papercontract-0.0.3-78616bc8781845bda2262df7df0f9b279bbdec017bb93af51d93709f038eda91   "/bin/sh -c 'cd /usr…"   35 minutes ago      Up 35 minutes                                                        fabricvscodelocalfabric-peer0.org1.example.com-papercontract-0.0.3
2f7fabfaddfe        hyperledger/fabric-peer:1.4.1                                                                                                         "peer node start"        36 minutes ago      Up 36 minutes       0.0.0.0:17051-17052->17051-17052/tcp             fabricvscodelocalfabric_peer0.org1.example.com
88f688b6ebba        hyperledger/fabric-couchdb:0.4.15                                                                                                     "tini -- /docker-ent…"   36 minutes ago      Up 36 minutes       4369/tcp, 9100/tcp, 0.0.0.0:17055->5984/tcp      fabricvscodelocalfabric_couchdb
b05de940a8c7        hyperledger/fabric-orderer:1.4.1                                                                                                      "orderer"                36 minutes ago      Up 36 minutes       7050/tcp, 0.0.0.0:17050->17050/tcp               fabricvscodelocalfabric_orderer.example.com
9191eb65ee7a        gliderlabs/logspout                                                                                                                   "/bin/logspout"          36 minutes ago      Up 36 minutes       0.0.0.0:17056->80/tcp                            fabricvscodelocalfabric_logspout
d6309f112d4c        hyperledger/fabric-ca:1.4.1                                                                                                           "sh -c 'fabric-ca-se…"   37 minutes ago      Up 36 minutes       7054/tcp, 0.0.0.0:17054->17054/tcp               fabricvscodelocalfabric_ca.org1.example.com
372f68a944b8        dev-peer0.org1.example.com-papercontract-0-d96abb966a1ed760663cf0a061700a902284832716c55b4cb05eca53054fe011                           "/bin/sh -c 'cd /usr…"   38 minutes ago      Up 38 minutes                                                        dev-peer0.org1.example.com-papercontract-0
6c983d60e48f        hyperledger/fabric-tools                                                                                                              "/bin/bash"              42 minutes ago      Up 42 minutes                                                        cliMagnetoCorp
184e650f2975        hyperledger/fabric-peer                                                                                                               "peer node start"        43 minutes ago      Up 43 minutes       0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp   peer0.org1.example.com
a6cbb904a6ed        hyperledger/fabric-ca                                                                                                                 "sh -c 'fabric-ca-se…"   43 minutes ago      Up 43 minutes       0.0.0.0:7054->7054/tcp                           ca.example.com
041a557654d6        hyperledger/fabric-orderer                                                                                                            "orderer"                43 minutes ago      Up 43 minutes       0.0.0.0:7050->7050/tcp                           orderer.example.com
6b4634079113        hyperledger/fabric-couchdb                                                                                                            "tini -- /docker-ent…"   43 minutes ago      Up 43 minutes       4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp       couchdb

1 个答案:

答案 0 :(得分:0)

您需要对客户端应用程序(issue.js等)进行 2项更改,以使其与最新版本的VS Code Extension提供的LOCAL FABRIC一起使用:

  1. 正如Paul在评论中所说,您需要导出连接配置文件,然后编辑代码以使用此新的JSON文件而不是YAML文件。
  2. 使用VS Code扩展名中的钱包。您可以导出它并编辑issue.js以指向导出的位置,也可以在文件系统上找到原始文件并直接指向它。

可以在/home/marko/.fabric-vscode/local_fabric_wallet/之类的位置找到电子钱包

在应用程序代码(issue.js)中,您将需要更改钱包的位置: const wallet = new FileSystemWallet('/home/marko/.fabric-vscode/local_fabric_wallet/');

和用户名: const userName = 'admin';

在查看issue.js时,我还要检查渠道名称合同名称以确保。 (我想渠道仍然是mychannel,但是合同名称可能是papernet-js而不是papercontract-请在VS Code中签入。)

其他背景

Commercial Paper标准教程在示例Fabric网络“基本网络”上运行。基本网络使用默认的网络端口7050、7051等,以及一组预先创建的加密材料。 VS Code扩展的早期版本使用相同的“基本网络”,因此使用VS Code轻松运行商业论文教程。

更高版本的VS Code扩展名使用为每个使用VS Code扩展名的人生成的自定义结构。如果要使用这些更高版本的VS Code将客户端应用程序(例如issue.js和queryapp.js)连接到自定义Fabric,则必须使用新的加密材料导出连接配置文件和电子钱包。自定义结构使用网络端口17050、17051等,因此,如果您查看原始的.YAML文件和新的.JSON文件,则可以看到不同之处。 (您还可以检查电子钱包,看看它们是否具有不同的加密材料。)

连接配置文件可以是.YAML文件或.JSON文件-它们具有相同的信息,只是格式不同-导入不同的文件类型时,客户端应用中的行略有不同。